[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAJ8uoz04Z72cVnhrQF+z96GTjG_xxYSMA+Lm2F1d5ABHvSuk6Q@mail.gmail.com>
Date: Wed, 24 Jan 2024 09:58:17 +0100
From: Magnus Karlsson <magnus.karlsson@...il.com>
To: Maciej Fijalkowski <maciej.fijalkowski@...el.com>
Cc: bpf@...r.kernel.org, ast@...nel.org, daniel@...earbox.net,
andrii@...nel.org, netdev@...r.kernel.org, magnus.karlsson@...el.com,
bjorn@...nel.org, echaudro@...hat.com, lorenzo@...nel.org,
martin.lau@...ux.dev, tirthendu.sarkar@...el.com, john.fastabend@...il.com,
horms@...nel.org
Subject: Re: [PATCH v5 bpf 00/11] net: bpf_xdp_adjust_tail() and Intel mbuf fixes
On Mon, 22 Jan 2024 at 23:16, Maciej Fijalkowski
<maciej.fijalkowski@...el.com> wrote:
>
> 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.
Thanks for this fix of getting bpf_xdp_djust_tail to work with AF_XDP
in multi-buffer mode. We clearly need to add a test case for this
helper in our test suite. I have put it on the todo list.
> 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