[RFC net-next 0/4] devmem/io_uring: Allow devices without parent PCI device
From: Dragos Tatulea
Date: Wed Jul 02 2025 - 13:27:20 EST
The io_uring and devmem code is assuming that the parent device of the
netdev is a DMA capable device. This is not always the case.
Some devices do have a DMA capable device that can be used, but not as
parent: mlx5 SFs have an auxdev as parent, but they do have an
associated PCI device.
Also, if DMA is not supported the operation should be blocked. Otherwise
the mapping will return success with 0 mapped entries and the caller
will consider the mapping as succesful.
This RFC is supposed to start the discussion on the best way to:
- Block the binding operation early if not supported.
- Allow devices that support this usecase but don't have a
parent device as a PCI device.
Dragos Tatulea (4):
net: Allow non parent devices to be used for ZC DMA
io_uring/zcrx: Use the new netdev_get_dma_dev() API
net: devmem: Use the new netdev_get_dma_dev() API
net/mlx5e: Enable HDS zerocopy flows for SFs
drivers/net/ethernet/mellanox/mlx5/core/en_main.c | 3 +++
include/linux/netdevice.h | 13 +++++++++++++
io_uring/zcrx.c | 2 +-
net/core/devmem.c | 10 +++++++++-
4 files changed, 26 insertions(+), 2 deletions(-)
--
2.50.0