DORMANTno replies

[RFC PATCH net v1] Revert "net: dsa: mt7530: untag VLAN-aware bridge PVID"

From: Eric Woudstra <hidden>
Date: 2026-07-07 07:38:45
Also in: linux-mediatek
Subsystem: mediatek switch driver, networking drivers, networking [dsa], the rest · Maintainers: Chester A. Unal, Daniel Golle, Andrew Lunn, "David S. Miller", Eric Dumazet, Jakub Kicinski, Paolo Abeni, Vladimir Oltean, Linus Torvalds

This reverts commit 4cb3cd670b2a29e52dd3cfd6463e44121674c9b8.

In the case of a userport of a switchdev attached to a vlan-aware bridge,
with untagged packets incoming, tagged at ingress of the bridge:

For all switchdev userports that support SWITCHDEV_OBJ_ID_PORT_VLAN,
which includes dsa-userports, the behaviour is that the tag is visible
in the ingress-hook. The commit mentioned above changes that, making
mt7530 deviate from this. Only on mt7530 the tag is not present in the
ingress-hook.

This, for one, is a problem for the software (forwarding) fastpath.
The flowtuple for this flow is created, with the tag included and marked
with the corresponding in_vlan_ingress bit.

Inside the ingress hook of the fastpath the incoming packet is tried to
match with the hash of this tuple, but is does not match any more.
The tag is missing. The packet does not follow the software-fastpath
in this direction.

Fixes: 4cb3cd670b2a ("net: dsa: mt7530: untag VLAN-aware bridge PVID")
Signed-off-by: Eric Woudstra <redacted>
---
 drivers/net/dsa/mt7530.c | 2 --
 1 file changed, 2 deletions(-)
diff --git a/drivers/net/dsa/mt7530.c b/drivers/net/dsa/mt7530.c
index 3c2a3029b10cf..752ba92b08517 100644
--- a/drivers/net/dsa/mt7530.c
+++ b/drivers/net/dsa/mt7530.c
@@ -2447,7 +2447,6 @@ mt7530_setup(struct dsa_switch *ds)
 	}
 
 	ds->assisted_learning_on_cpu_port = true;
-	ds->untag_vlan_aware_bridge_pvid = true;
 	ds->mtu_enforcement_ingress = true;
 	ds->ageing_time_min = 2 * 1000;
 	ds->ageing_time_max = (AGE_CNT_MAX + 1) * (AGE_UNIT_MAX + 1) * 1000;
@@ -2639,7 +2638,6 @@ mt7531_setup_common(struct dsa_switch *ds)
 	int ret, i;
 
 	ds->assisted_learning_on_cpu_port = true;
-	ds->untag_vlan_aware_bridge_pvid = true;
 	ds->mtu_enforcement_ingress = true;
 	ds->ageing_time_min = 2 * 1000;
 	ds->ageing_time_max = (AGE_CNT_MAX + 1) * (AGE_UNIT_MAX + 1) * 1000;
-- 
2.53.0
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help