public inbox for netdev@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH net-next v2 0/5][pull request] ice: add support for devmem/io_uring Rx and Tx
@ 2026-03-25 20:06 Tony Nguyen
  2026-03-25 20:06 ` [PATCH net-next v2 1/5] libeth: pass Rx queue index to PP when creating a fill queue Tony Nguyen
                   ` (4 more replies)
  0 siblings, 5 replies; 7+ messages in thread
From: Tony Nguyen @ 2026-03-25 20:06 UTC (permalink / raw)
  To: davem, kuba, pabeni, edumazet, andrew+netdev, netdev
  Cc: Tony Nguyen, aleksander.lobakin, jacob.e.keller,
	nxne.cnse.osdt.itp.upstreaming, horms, maciej.fijalkowski,
	magnus.karlsson, ast, daniel, hawk, john.fastabend, sdf, bpf

Alexander Lobakin says:

Now that ice uses libeth for managing Rx buffers and supports
configurable header split, it's ready to get support for sending
and receiving packets with unreadable (to the kernel) frags.

Extend libeth just a little bit to allow creating PPs with custom
memory providers and make sure ice works correctly with the netdev
ops locking. Then add the full set of queue_mgmt_ops and don't
unmap unreadable frags on Tx completion.
No perf regressions for the regular flows and no code duplication
implied.

Credits to the fbnic developers, which's code helped me understand
the memory providers and queue_mgmt_ops logics and served as
a reference.
---
v2:
Patch 3:
 - More locking fixes
 - Fix for safe mode from Kohei

v1: https://lore.kernel.org/netdev/20260310220624.537917-1-anthony.l.nguyen@intel.com/

Originally from:
https://lore.kernel.org/netdev/20260206174910.4066255-1-anthony.l.nguyen@intel.com/

Changes since:
Rebased
Patch 3:
 - fix [hopefully] all inconsistent locking
 - fix kdoc

The following are changes since commit d1e59a46973719e458bec78d00dd767d7a7ba71f:
  tcp: add cwnd_event_tx_start to tcp_congestion_ops
and are available in the git repository at:
  git://git.kernel.org/pub/scm/linux/kernel/git/tnguy/next-queue 100GbE

Alexander Lobakin (5):
  libeth: pass Rx queue index to PP when creating a fill queue
  libeth: handle creating pools with unreadable buffers
  ice: migrate to netdev ops lock
  ice: implement Rx queue management ops
  ice: add support for transmitting unreadable frags

 drivers/net/ethernet/intel/iavf/iavf_txrx.c  |   1 +
 drivers/net/ethernet/intel/ice/ice_base.c    | 247 +++++++++++++++----
 drivers/net/ethernet/intel/ice/ice_base.h    |   2 +
 drivers/net/ethernet/intel/ice/ice_dcb_lib.c |  15 +-
 drivers/net/ethernet/intel/ice/ice_lib.c     | 225 +++++++++++++----
 drivers/net/ethernet/intel/ice/ice_lib.h     |  18 +-
 drivers/net/ethernet/intel/ice/ice_main.c    |  75 +++---
 drivers/net/ethernet/intel/ice/ice_sf_eth.c  |   4 +
 drivers/net/ethernet/intel/ice/ice_txrx.c    |  43 +++-
 drivers/net/ethernet/intel/ice/ice_txrx.h    |   2 +
 drivers/net/ethernet/intel/ice/ice_xsk.c     |   4 +-
 drivers/net/ethernet/intel/idpf/idpf_txrx.c  |  13 +
 drivers/net/ethernet/intel/idpf/idpf_txrx.h  |   2 +
 drivers/net/ethernet/intel/libeth/rx.c       |  43 ++++
 include/net/libeth/rx.h                      |   2 +
 include/net/libeth/tx.h                      |   2 +-
 16 files changed, 542 insertions(+), 156 deletions(-)

-- 
2.47.1


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2026-03-27 13:59 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-03-25 20:06 [PATCH net-next v2 0/5][pull request] ice: add support for devmem/io_uring Rx and Tx Tony Nguyen
2026-03-25 20:06 ` [PATCH net-next v2 1/5] libeth: pass Rx queue index to PP when creating a fill queue Tony Nguyen
2026-03-25 20:06 ` [PATCH net-next v2 2/5] libeth: handle creating pools with unreadable buffers Tony Nguyen
2026-03-25 20:06 ` [PATCH net-next v2 3/5] ice: migrate to netdev ops lock Tony Nguyen
2026-03-27 13:57   ` Simon Horman
2026-03-25 20:06 ` [PATCH net-next v2 4/5] ice: implement Rx queue management ops Tony Nguyen
2026-03-25 20:06 ` [PATCH net-next v2 5/5] ice: add support for transmitting unreadable frags Tony Nguyen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox