This series contains a number of fixes and improvements to the logic concerned with selecting an rx path in the intel drivers.
Patch 1 fixes incorrect behaviour in the ci_rxq_vec_capable function which would disqualify rxqs that have the timestamp offload enabled from selecting vector paths. This was incorrect because iavf vector paths support timestamp offload. Patch 2 removes a reduntant check from the ci_rxq_vec_capable function that disqualifies rxqs that have the buffer split offload enabled from selecting vector paths. This check is performed during the common rx path selection for three of the drivers and during dev_configure for the fourth, so the check in ci_rxq_vec_capable is unneeded. Although it is similar this patch was kept separate from patch 1 because it is only relevant after the three aformention drivers adopted the common rx path selection infrastructure, whereas patch 1 is a fix for an issue that existed prior to that. Patches 3 and 4 make fixes to the iavf rx path definitions, ensuring the correct offloads and features are defined for all paths. The final three patches reformat the arrays in the i40e iavf and ice drivers that hold information for each Rx path that are used in the common selection process, in an attempt to improve readability. v2: * Added a new patch (2) that removes the reduntant check for the buffer split offload in the common function. * Removed the useless defines IAVF_RX_NO_OFFLOADS and ICE_RX_NO_OFFLOADS * Use a newline for closing braces in the rx path infos arrays * Let a simd width of zero represent scalar paths instead of 64 which lessens the number of fields that need to be initialised for scalar path definitions Ciara Loftus (7): net/intel: fix Rx vector capability detection net/intel: remove redundant Rx offload check net/iavf: fix Rx paths feature definitions net/iavf: fix Rx path selection for scalar flex bulk alloc net/iavf: reformat the Rx path infos array net/i40e: reformat the Rx path infos array net/ice: reformat the Rx path infos array drivers/net/intel/common/rx.h | 7 +- drivers/net/intel/i40e/i40e_rxtx.c | 149 ++++++-- drivers/net/intel/i40e/i40e_rxtx_vec_common.h | 2 +- drivers/net/intel/iavf/iavf.h | 1 + drivers/net/intel/iavf/iavf_rxtx.c | 335 ++++++++++++++---- drivers/net/intel/iavf/iavf_rxtx.h | 2 - drivers/net/intel/ice/ice_rxtx.c | 147 ++++++-- drivers/net/intel/ice/ice_rxtx.h | 1 - drivers/net/intel/ice/ice_rxtx_vec_common.h | 2 +- .../net/intel/ixgbe/ixgbe_rxtx_vec_common.c | 2 +- 10 files changed, 498 insertions(+), 150 deletions(-) -- 2.34.1

