Thread (1 message) 1 message, 1 author, 2025-09-04

RE: [Intel-wired-lan] [PATCH iwl-next v5 11/13] idpf: add support for XDP on Rx

From: R, Ramu <hidden>
Date: 2025-09-04 16:20:12
Also in: bpf, intel-wired-lan, lkml

-----Original Message-----
From: Intel-wired-lan <redacted> On Behalf Of
Alexander Lobakin
Sent: Tuesday, August 26, 2025 9:25 PM
To: intel-wired-lan@lists.osuosl.org
Cc: Lobakin, Aleksander <aleksander.lobakin@intel.com>; Kubiak, Michal
[off-list ref]; Fijalkowski, Maciej
[off-list ref]; Nguyen, Anthony L
[off-list ref]; Kitszel, Przemyslaw
[off-list ref]; Andrew Lunn [off-list ref];
David S. Miller [off-list ref]; Eric Dumazet
[off-list ref]; Jakub Kicinski [off-list ref]; Paolo Abeni
[off-list ref]; Alexei Starovoitov [off-list ref]; Daniel
Borkmann [off-list ref]; Simon Horman [off-list ref];
NXNE CNSE OSDT ITP Upstreaming
[off-list ref]; bpf@vger.kernel.org;
netdev@vger.kernel.org; linux-kernel@vger.kernel.org
Subject: [Intel-wired-lan] [PATCH iwl-next v5 11/13] idpf: add support for XDP
on Rx

Use libeth XDP infra to support running XDP program on Rx polling.
This includes all of the possible verdicts/actions.
XDP Tx queues are cleaned only in "lazy" mode when there are less than
1/4 free descriptors left on the ring. libeth helper macros to define driver-
specific XDP functions make sure the compiler could uninline them when
needed.

Use __LIBETH_WORD_ACCESS to parse descriptors more efficiently when
applicable. It really gives some good boosts and code size reduction on
x86_64:

XDP only: add/remove: 0/0 grow/shrink: 3/3 up/down: 5/-59 (-54) with XSk:
add/remove: 0/0 grow/shrink: 5/6 up/down: 23/-124 (-101)

with the most demanding workloads like XSk xmit differing in up to 5-8%.

Co-developed-by: Michal Kubiak <redacted>
Signed-off-by: Michal Kubiak <redacted>
Signed-off-by: Alexander Lobakin <aleksander.lobakin@intel.com>
---
 drivers/net/ethernet/intel/idpf/idpf_txrx.h |   4 +-
 drivers/net/ethernet/intel/idpf/xdp.h       |  92 +++++++++++-
 drivers/net/ethernet/intel/idpf/idpf_lib.c  |   2 +
 drivers/net/ethernet/intel/idpf/idpf_txrx.c |  23 +--
 drivers/net/ethernet/intel/idpf/xdp.c       | 147 +++++++++++++++++++-
 5 files changed, 248 insertions(+), 20 deletions(-)
Tested-by: R,Ramu <redacted>
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help