Depending on the underlying architecture and CPU flags available, a
different set of Rx/Tx paths may be defined by a driver using the common
path selection infrastructure. However the path selection function
iterates through the entire array of potential paths, regardless of
whether they are available for selection by that platform. This could
result in a null burst function being selected. Fix this by discarding
paths with a null burst function from selection.

The fix for the Tx paths can be squashed into the next-net-intel tree
as the commit that it targets has not yet made it into the main branch.

I added a third commit which addresses some minor inconsistencies in the
Rx path selection code and brings it in line with the Tx path selection
code. Functionally it remains the same.

Ciara Loftus (3):
  net/intel: prevent selection of a null Tx burst function
  net/intel: prevent selection of a null Rx burst function
  net/intel: bring common Rx path selection in line with Tx

 drivers/net/intel/common/rx.h             |  42 ++++-----
 drivers/net/intel/common/tx.h             |   4 +
 drivers/net/intel/cpfl/cpfl_rxtx.c        |   8 +-
 drivers/net/intel/i40e/i40e_rxtx.c        |  40 ++++----
 drivers/net/intel/iavf/iavf_rxtx.c        | 106 +++++++++++-----------
 drivers/net/intel/ice/ice_rxtx.c          |  40 ++++----
 drivers/net/intel/idpf/idpf_common_rxtx.c |  10 +-
 drivers/net/intel/idpf/idpf_rxtx.c        |   8 +-
 8 files changed, 131 insertions(+), 127 deletions(-)

-- 
2.43.0

Reply via email to