[PATCH v3 0/9] ioring PMD device

Stephen Hemminger
2025-03-11T23:54:42Z

This is a new simplified TAP device that uses the Linux kernel
ioring API to provide a read/write ring with kernel.

This is split from tap device because there are so many
unnecessary things in existing tap, and supporting ioring is
better without ifdefs etc. The default name of the tap
device is different that other uses in DPDK but the driver
tries to keep the same relevant devargs as before.

This driver will only provide features that match what kernel
does, so no flow support etc. The next version will add checksum
and multi-segment packets. Some of the doc files may need update
as well.

v3 - add multi-segment support
review feedback

Stephen Hemminger (9):
net/ioring: introduce new driver
net/ioring: implement link state
net/ioring: implement control functions
net/ioring: implement management functions
net/ioring: implement secondary process support
net/ioring: implement receive and transmit
net/ioring: add VLAN support
net/ioring: implement statistics
net/ioring: support multi-segment Rx and Tx

doc/guides/nics/features/ioring.ini | 16 +
doc/guides/nics/index.rst | 1 +
doc/guides/nics/ioring.rst | 66 ++
drivers/net/ioring/meson.build | 15 +
drivers/net/ioring/rte_eth_ioring.c | 1129 +++++++++++++++++++++++++++
drivers/net/meson.build | 1 +
6 files changed, 1228 insertions(+)
create mode 100644 doc/guides/nics/features/ioring.ini
create mode 100644 doc/guides/nics/ioring.rst
create mode 100644 drivers/net/ioring/meson.build
create mode 100644 drivers/net/ioring/rte_eth_ioring.c

--
2.47.2