Files
linux/drivers/net/ethernet/intel/ice
Maciej Fijalkowski 3876ff525d ice: xsk: Handle SW XDP ring wrap and bump tail more often
Currently, if ice_clean_rx_irq_zc() processed the whole ring and
next_to_use != 0, then ice_alloc_rx_buf_zc() would not refill the whole
ring even if the XSK buffer pool would have enough free entries (either
from fill ring or the internal recycle mechanism) - it is because ring
wrap is not handled.

Improve the logic in ice_alloc_rx_buf_zc() to address the problem above.
Do not clamp the count of buffers that is passed to
xsk_buff_alloc_batch() in case when next_to_use + buffer count >=
rx_ring->count,  but rather split it and have two calls to the mentioned
function - one for the part up until the wrap and one for the part after
the wrap.

Signed-off-by: Magnus Karlsson <magnus.karlsson@intel.com>
Signed-off-by: Maciej Fijalkowski <maciej.fijalkowski@intel.com>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Reviewed-by: Alexander Lobakin <alexandr.lobakin@intel.com>
Link: https://lore.kernel.org/bpf/20220125160446.78976-4-maciej.fijalkowski@intel.com
2022-01-27 17:25:32 +01:00
..
2021-12-14 10:19:13 -08:00
2021-12-14 10:19:13 -08:00
2021-11-30 08:02:12 -08:00
2021-12-14 08:06:47 -08:00
2022-01-06 10:15:09 -08:00
2022-01-06 10:15:09 -08:00
2021-05-28 20:11:13 -07:00
2021-10-07 10:41:42 -07:00
2022-01-06 10:15:09 -08:00
2022-01-06 10:15:09 -08:00
2022-01-06 10:15:09 -08:00
2021-12-14 10:19:14 -08:00
2021-12-14 10:19:13 -08:00
2021-12-14 10:19:13 -08:00
2021-12-14 10:19:14 -08:00
2021-10-28 11:00:18 -07:00