[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20230512151639.992033-1-larysa.zaremba@intel.com>
Date: Fri, 12 May 2023 17:16:24 +0200
From: Larysa Zaremba <larysa.zaremba@...el.com>
To: bpf@...r.kernel.org
Cc: Larysa Zaremba <larysa.zaremba@...el.com>,
Stanislav Fomichev <sdf@...gle.com>,
Alexei Starovoitov <ast@...nel.org>,
Daniel Borkmann <daniel@...earbox.net>,
Andrii Nakryiko <andrii@...nel.org>,
Jakub Kicinski <kuba@...nel.org>,
Martin KaFai Lau <martin.lau@...ux.dev>,
Song Liu <song@...nel.org>, Yonghong Song <yhs@...com>,
John Fastabend <john.fastabend@...il.com>,
KP Singh <kpsingh@...nel.org>, Jiri Olsa <jolsa@...nel.org>,
Jesse Brandeburg <jesse.brandeburg@...el.com>,
Tony Nguyen <anthony.l.nguyen@...el.com>,
Anatoly Burakov <anatoly.burakov@...el.com>,
Jesper Dangaard Brouer <brouer@...hat.com>,
Alexander Lobakin <alexandr.lobakin@...el.com>,
Magnus Karlsson <magnus.karlsson@...il.com>,
Maryam Tahhan <mtahhan@...hat.com>, xdp-hints@...-project.net,
netdev@...r.kernel.org, intel-wired-lan@...ts.osuosl.org,
linux-kernel@...r.kernel.org
Subject: [PATCH bpf-next 00/15] new kfunc XDP hints and ice implementation
This series introduces XDP hints support into ice driver and adds new kfunc
hints that utilize hardware capabilities.
- patches 01-04 refactors driver descriptor to skb fields processing code,
making it more reusable without changing any behavior.
- patches 05-08 add support add support for existing hints (timestamp and
hash) in ice driver.
- patches 09-12 introduce new kfunc hints, namely 2 VLAN tag hints
(ctag & stag separately) and "checksum level", which is basically
a CHECKSUM_UNNECESSARY indicator. Then those hints are implemented in
ice driver.
- patches 13-15 adjust xdp_hw_metadata to account for new hints.
- in particular, patch 14 lifts the limitation on data_meta size to be
32 or lower, because all the information that needs to be passed into
AF_XDP from XDP in xdp_hw_metadata no longer fits into 32 bytes.
Aleksander Lobakin (1):
net, xdp: allow metadata > 32
Larysa Zaremba (14):
ice: make RX hash reading code more reusable
ice: make RX HW timestamp reading code more reusable
ice: make RX checksum checking code more reusable
ice: Make ptype internal to descriptor info processing
ice: Introduce ice_xdp_buff
ice: Support HW timestamp hint
ice: Support RX hash XDP hint
ice: Support XDP hints in AF_XDP ZC mode
xdp: Add VLAN tag hint
ice: Implement VLAN tag hint
xdp: Add checksum level hint
ice: Implement checksum level hint
selftests/bpf: Allow VLAN packets in xdp_hw_metadata
selftests/bpf: Add flags and new hints to xdp_hw_metadata
Documentation/networking/xdp-rx-metadata.rst | 14 +-
drivers/net/ethernet/intel/ice/ice.h | 2 +
.../net/ethernet/intel/ice/ice_lan_tx_rx.h | 412 +++++++++---------
drivers/net/ethernet/intel/ice/ice_main.c | 1 +
drivers/net/ethernet/intel/ice/ice_ptp.c | 23 +-
drivers/net/ethernet/intel/ice/ice_ptp.h | 18 +-
drivers/net/ethernet/intel/ice/ice_txrx.c | 13 +-
drivers/net/ethernet/intel/ice/ice_txrx.h | 23 +-
drivers/net/ethernet/intel/ice/ice_txrx_lib.c | 311 +++++++++++--
drivers/net/ethernet/intel/ice/ice_txrx_lib.h | 13 +-
drivers/net/ethernet/intel/ice/ice_xsk.c | 16 +-
include/linux/netdevice.h | 3 +
include/linux/skbuff.h | 13 +-
include/net/xdp.h | 16 +-
kernel/bpf/offload.c | 6 +
net/core/xdp.c | 36 ++
.../selftests/bpf/progs/xdp_hw_metadata.c | 49 ++-
tools/testing/selftests/bpf/xdp_hw_metadata.c | 29 +-
tools/testing/selftests/bpf/xdp_metadata.h | 36 +-
19 files changed, 738 insertions(+), 296 deletions(-)
--
2.35.3
Powered by blists - more mailing lists