[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20240122221610.556746-1-maciej.fijalkowski@intel.com>
Date: Mon, 22 Jan 2024 23:15:59 +0100
From: Maciej Fijalkowski <maciej.fijalkowski@...el.com>
To: bpf@...r.kernel.org,
ast@...nel.org,
daniel@...earbox.net,
andrii@...nel.org
Cc: netdev@...r.kernel.org,
magnus.karlsson@...el.com,
bjorn@...nel.org,
maciej.fijalkowski@...el.com,
echaudro@...hat.com,
lorenzo@...nel.org,
martin.lau@...ux.dev,
tirthendu.sarkar@...el.com,
john.fastabend@...il.com,
horms@...nel.org
Subject: [PATCH v5 bpf 00/11] net: bpf_xdp_adjust_tail() and Intel mbuf fixes
Hey,
after a break followed by dealing with sickness, here is a v5 that makes
bpf_xdp_adjust_tail() actually usable for ZC drivers that support XDP
multi-buffer. Since v4 I tried also using bpf_xdp_adjust_tail() with
positive offset which exposed yet another issues, which can be observed
by increased commit count when compared to v3.
John, in the end I think we should remove handling
MEM_TYPE_XSK_BUFF_POOL from __xdp_return(), but it is out of the scope
for fixes set, IMHO.
Thanks,
Maciej
v5:
- pick correct version of patch 5 [Simon]
- elaborate a bit more on what patch 2 fixes
v4:
- do not clear frags flag when deleting tail; xsk_buff_pool now does
that
- skip some NULL tests for xsk_buff_get_tail [Martin, John]
- address problems around registering xdp_rxq_info
- fix bpf_xdp_frags_increase_tail() for ZC mbuf
v3:
- add acks
- s/xsk_buff_tail_del/xsk_buff_del_tail
- address i40e as well (thanks Tirthendu)
v2:
- fix !CONFIG_XDP_SOCKETS builds
- add reviewed-by tag to patch 3
Maciej Fijalkowski (10):
xsk: recycle buffer in case Rx queue was full
xsk: make xsk_buff_pool responsible for clearing xdp_buff::flags
xsk: fix usage of multi-buffer BPF helpers for ZC XDP
ice: work on pre-XDP prog frag count
ice: remove redundant xdp_rxq_info registration
intel: xsk: initialize skb_frag_t::bv_offset in ZC drivers
ice: update xdp_rxq_info::frag_size for ZC enabled Rx queue
xdp: reflect tail increase for MEM_TYPE_XSK_BUFF_POOL
i40e: set xdp_rxq_info::frag_size
i40e: update xdp_rxq_info::frag_size for ZC enabled Rx queue
Tirthendu Sarkar (1):
i40e: handle multi-buffer packets that are shrunk by xdp prog
drivers/net/ethernet/intel/i40e/i40e_main.c | 47 ++++++++++++------
drivers/net/ethernet/intel/i40e/i40e_txrx.c | 49 +++++++++----------
drivers/net/ethernet/intel/i40e/i40e_xsk.c | 4 +-
drivers/net/ethernet/intel/ice/ice_base.c | 7 ++-
drivers/net/ethernet/intel/ice/ice_txrx.c | 19 ++++---
drivers/net/ethernet/intel/ice/ice_txrx.h | 1 +
drivers/net/ethernet/intel/ice/ice_txrx_lib.h | 31 ++++++++----
drivers/net/ethernet/intel/ice/ice_xsk.c | 4 +-
include/net/xdp_sock_drv.h | 26 ++++++++++
net/core/filter.c | 43 ++++++++++++----
net/xdp/xsk.c | 12 +++--
net/xdp/xsk_buff_pool.c | 3 ++
12 files changed, 167 insertions(+), 79 deletions(-)
--
2.34.1
Powered by blists - more mailing lists