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