[RFC 0/3] ethdev: introduce device reinitialisation API
Ciara Loftus
ciara.loftus at intel.com
Fri Oct 17 13:11:06 CEST 2025
This RFC arose from a discussion [1] around whether a generic API that
performs device reset and reinitialisation would be useful. While the
net effect of a call to such an API can be achieved with a sequence of
calls to existing APIs (reset, configure, rx/tx queue_setup), the
benefit of encapsulating this all under one API is twofold:
1. the burden is taken off the user for supplying the device
configuration in the call, we use the existing device conf under the
hood and only need the port_id as input.
2. it can prevent potential unnecessary/repeat reconfiguration steps.
The PMD dev_reinit ops will only perform the necessary reconfiguration
steps after the device reset.
Patch 1 implements the API, Patch 2 implements one example of the reinit
op for the iavf driver and Patch 3 integrates the API into testpmd.
[1] https://mails.dpdk.org/archives/dev/2025-October/325386.html
Ciara Loftus (3):
ethdev: introduce device reinitialisation API
net/iavf: implement device reinitialisation callback
app/testpmd: support port reinitialisation
app/test-pmd/cmdline.c | 15 +++++---
app/test-pmd/testpmd.c | 26 ++++++++++++++
app/test-pmd/testpmd.h | 1 +
drivers/net/intel/iavf/iavf.h | 2 +-
drivers/net/intel/iavf/iavf_ethdev.c | 52 ++++++++++++++++++++++------
drivers/net/intel/iavf/iavf_vchnl.c | 2 +-
lib/ethdev/ethdev_driver.h | 4 +++
lib/ethdev/ethdev_trace.h | 7 ++++
lib/ethdev/ethdev_trace_points.c | 3 ++
lib/ethdev/rte_ethdev.c | 32 +++++++++++++++++
lib/ethdev/rte_ethdev.h | 25 +++++++++++++
11 files changed, 151 insertions(+), 18 deletions(-)
--
2.34.1
More information about the dev
mailing list