[PATCH v3 4/6] net/iavf: fix single VLAN insertion positioning
Bruce Richardson
bruce.richardson at intel.com
Thu Nov 6 16:09:43 CET 2025
On Thu, Nov 06, 2025 at 11:50:14AM +0000, Ciara Loftus wrote:
> Commit fdc37964c2bf ("net/iavf: support QinQ insertion offload in scalar
> Tx") broke single VLAN insertion offload in cases where the v2 offload
> capability and both inner and outer insertion were supported because it
> caused inner VLAN tags to be inserted instead of outer.
>
> When an iavf tx queue is being set up, if v2 offload capability is
> supported, the driver queries the insertion capabilities and takes note
> of where VLAN tags should be placed in the transmit and/or context
> descriptors for insertion offload. In the offending commit, when both
> inner and outer insertion was reported as supported, the flag
> "vlan_flag" was changed to hold the location for inner VLAN tags.
> However this caused inner VLAN tags to be inserted in the case of single
> VLAN offload which is incorrect behaviour for this use case.
>
> To fix this, revert the "vlan_flag" back to holding the location for
> outer VLAN tags and update the datapath code accordingly.
>
> Fixes: fdc37964c2bf ("net/iavf: support QinQ insertion offload in scalar Tx")
>
> Signed-off-by: Ciara Loftus <ciara.loftus at intel.com>
> ---
> drivers/net/intel/iavf/iavf_rxtx.c | 53 +++++++------------
> drivers/net/intel/iavf/iavf_rxtx_vec_avx512.c | 8 +--
> drivers/net/intel/iavf/iavf_rxtx_vec_common.h | 5 +-
> 3 files changed, 26 insertions(+), 40 deletions(-)
>
Acked-by: Bruce Richardson <bruce.richardson at intel.com>
More information about the dev
mailing list