[PATCH] net/i40e: fix supported offloads for Rx vector path
David Marchand
david.marchand at redhat.com
Tue Sep 2 10:08:14 CEST 2025
Hello,
On Mon, 1 Sept 2025 at 12:00, Ciara Loftus <ciara.loftus at intel.com> wrote:
>
> The set of supported Rx offloads in the vector path had been defined as
> those supported by the scalar path. This was incorrect so define a new
> list of supported offloads for the vector path. The list is the same
> as the scalar path except it excludes vlan extend and qinq strip.
>
> Fixes: 052ae311091c ("net/i40e: use the common Rx path selection infrastructure")
>
> Signed-off-by: Ciara Loftus <ciara.loftus at intel.com>
> ---
> drivers/net/intel/i40e/i40e_rxtx.h | 11 ++++++++++-
> 1 file changed, 10 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/net/intel/i40e/i40e_rxtx.h b/drivers/net/intel/i40e/i40e_rxtx.h
> index 5d5d4e08b0..1f210dfdff 100644
> --- a/drivers/net/intel/i40e/i40e_rxtx.h
> +++ b/drivers/net/intel/i40e/i40e_rxtx.h
> @@ -80,7 +80,16 @@ enum i40e_header_split_mode {
> RTE_ETH_RX_OFFLOAD_VLAN_FILTER | \
> RTE_ETH_RX_OFFLOAD_RSS_HASH)
>
> -#define I40E_RX_VECTOR_OFFLOADS I40E_RX_SCALAR_OFFLOADS
> +#define I40E_RX_VECTOR_OFFLOADS ( \
> + RTE_ETH_RX_OFFLOAD_VLAN_STRIP | \
> + RTE_ETH_RX_OFFLOAD_IPV4_CKSUM | \
> + RTE_ETH_RX_OFFLOAD_UDP_CKSUM | \
> + RTE_ETH_RX_OFFLOAD_TCP_CKSUM | \
> + RTE_ETH_RX_OFFLOAD_OUTER_IPV4_CKSUM | \
> + RTE_ETH_RX_OFFLOAD_KEEP_CRC | \
> + RTE_ETH_RX_OFFLOAD_SCATTER | \
> + RTE_ETH_RX_OFFLOAD_VLAN_FILTER | \
> + RTE_ETH_RX_OFFLOAD_RSS_HASH)
I was curious about this fix so I have been trying to understand the
list of supported offloads, and I have a few interrogations.
How does this new code articulate with function
i40e_rx_vec_dev_conf_condition_check_default() (that seems to have a
build check on RTE_LIBRTE_IEEE1588).
This seems like redundant logic to me.
Should the dev_info->rx_offload_capa field be filled with the common
set of flags of the scalar handler?
--
David Marchand
More information about the dev
mailing list