[PATCH v2 00/10] Fix multi process path selection in Intel drivers

Ciara Loftus
2026-02-05T12:46:41Z

This series fixes and makes consistent the approach to selecting Rx and
Tx paths in a multi process scenario across the Intel drivers that use
the common path selection framework.

In v25.11 the i40e, iavf and ice drivers prevented Rx path selection by
secondary processes, in favour of simply selecting the path chosen by
the primary process. However, this model does not work if the primary
process hasn't started the device before the secondary process
encounters the path selection logic. To address this, permit path
selection by any process, so long as the device has not yet been
started. This allows for the use case where the secondary process is the
process that starts the device.
The idpf and cpfl drivers are updated to follow this model as well.

The same issue exists for the Tx path selection for i40e, iavf, ice,
idpf and cpfl, so implement the same logic when selecting a Tx path as
well ie. permit path selection if the device has not been started.

I kept the patches for fixing the Rx and Tx path selection separate, as
the patches that target the Rx side will need to be backported to v25.11
whereas the patches for the Tx side do not as that logic was introduced
post v25.11.

v2: fix some cross compile build errors

Ciara Loftus (10):
net/i40e: permit secondary process Rx path selection
net/iavf: permit secondary process Rx path selection
net/ice: permit secondary process Rx path selection
net/idpf: prevent Rx path selection after device start
net/cpfl: prevent Rx path selection after device start
net/i40e: permit secondary process Tx path selection
net/iavf: permit secondary process Tx path selection
net/ice: permit secondary process Tx path selection
net/idpf: permit secondary process Tx path selection
net/cpfl: permit secondary process Tx path selection

drivers/net/intel/cpfl/cpfl_rxtx.c | 13 ++++++++++---
drivers/net/intel/i40e/i40e_rxtx.c | 8 ++++----
drivers/net/intel/iavf/iavf_rxtx.c | 8 ++++----
drivers/net/intel/ice/ice_rxtx.c | 8 ++++----
drivers/net/intel/idpf/idpf_rxtx.c | 13 ++++++++++---
5 files changed, 32 insertions(+), 18 deletions(-)

--
2.43.0