patch 'net/ice: use configured outer TPID for VLAN filter in DVM' has been queued to stable release 24.11.7
luca.boccassi at gmail.com
luca.boccassi at gmail.com
Thu Jun 11 15:20:33 CEST 2026
Hi,
FYI, your patch has been queued to stable release 24.11.7
Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 06/13/26. So please
shout if anyone has objections.
Also note that after the patch there's a diff of the upstream commit vs the
patch applied to the branch. This will indicate if there was any rebasing
needed to apply to the stable branch. If there were code changes for rebasing
(ie: not only metadata diffs), please double check that the rebase was
correctly done.
Queued patches are on a temporary branch at:
https://github.com/bluca/dpdk-stable
This queued commit can be viewed at:
https://github.com/bluca/dpdk-stable/commit/e6481fcdf3811ab06d38371318087a78fb4b6e54
Thanks.
Luca Boccassi
---
>From e6481fcdf3811ab06d38371318087a78fb4b6e54 Mon Sep 17 00:00:00 2001
From: Kavya AV <kavyax.a.v at intel.com>
Date: Wed, 27 May 2026 16:14:42 +0000
Subject: [PATCH] net/ice: use configured outer TPID for VLAN filter in DVM
[ upstream commit a5269801b9e428baa14583fae742659a47e47243 ]
In Double VLAN Mode (DVM), the hardware switch recipe
ICE_SW_LKUP_VLAN matches on both the VLAN ID and the TPID.
Previously, ice_vlan_filter_set() always initialized the VLAN
filter with the hardcoded RTE_ETHER_TYPE_VLAN (0x8100), regardless
of the outer TPID configured by the user via vlan_tpid_set().
This caused a mismatch when a non-standard outer TPID such as
0x88a8 (IEEE 802.1ad) was configured: the hardware filter was
programmed with TPID 0x8100 while incoming packets carried TPID
0x88a8, resulting in all such packets being dropped by the VLAN
pruning logic.
Fix this by replacing the hardcoded RTE_ETHER_TYPE_VLAN with
pf->outer_ethertype in the ICE_VLAN() macro call. This field is
already updated by ice_vlan_tpid_set() when the user configures
the outer TPID, and defaults to RTE_ETHER_TYPE_VLAN at
initialization, so the change is safe for standard 802.1q traffic.
In SVM, the TPID is not part of the hardware lookup key, so this
change has no functional impact in that mode.
Fixes: 295b34f55b00 ("net/ice: fix VLAN 0 adding based on VLAN mode")
Signed-off-by: Kavya AV <kavyax.a.v at intel.com>
Acked-by: Bruce Richardson <bruce.richardson at intel.com>
---
drivers/net/ice/ice_ethdev.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/drivers/net/ice/ice_ethdev.c b/drivers/net/ice/ice_ethdev.c
index 156a4fb78c..a54a247389 100644
--- a/drivers/net/ice/ice_ethdev.c
+++ b/drivers/net/ice/ice_ethdev.c
@@ -4607,7 +4607,8 @@ static int
ice_vlan_filter_set(struct rte_eth_dev *dev, uint16_t vlan_id, int on)
{
struct ice_pf *pf = ICE_DEV_PRIVATE_TO_PF(dev->data->dev_private);
- struct ice_vlan vlan = ICE_VLAN(RTE_ETHER_TYPE_VLAN, vlan_id);
+ /* Use the configured outer_ethertype instead of hardcoded 0x8100 */
+ struct ice_vlan vlan = ICE_VLAN(pf->outer_ethertype, vlan_id);
struct ice_vsi *vsi = pf->main_vsi;
int ret;
--
2.47.3
---
Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- - 2026-06-11 14:20:04.634295342 +0100
+++ 0084-net-ice-use-configured-outer-TPID-for-VLAN-filter-in.patch 2026-06-11 14:20:01.322748607 +0100
@@ -1 +1 @@
-From a5269801b9e428baa14583fae742659a47e47243 Mon Sep 17 00:00:00 2001
+From e6481fcdf3811ab06d38371318087a78fb4b6e54 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit a5269801b9e428baa14583fae742659a47e47243 ]
+
@@ -28 +29,0 @@
-Cc: stable at dpdk.org
@@ -33 +34 @@
- drivers/net/intel/ice/ice_ethdev.c | 3 ++-
+ drivers/net/ice/ice_ethdev.c | 3 ++-
@@ -36,5 +37,5 @@
-diff --git a/drivers/net/intel/ice/ice_ethdev.c b/drivers/net/intel/ice/ice_ethdev.c
-index b7cea3bfc1..777131d5c3 100644
---- a/drivers/net/intel/ice/ice_ethdev.c
-+++ b/drivers/net/intel/ice/ice_ethdev.c
-@@ -5049,7 +5049,8 @@ static int
+diff --git a/drivers/net/ice/ice_ethdev.c b/drivers/net/ice/ice_ethdev.c
+index 156a4fb78c..a54a247389 100644
+--- a/drivers/net/ice/ice_ethdev.c
++++ b/drivers/net/ice/ice_ethdev.c
+@@ -4607,7 +4607,8 @@ static int
More information about the stable
mailing list