]> git.baikalelectronics.ru Git - kernel.git/commit
net: dsa: sja1105: deny more than one VLAN-aware bridge
authorVladimir Oltean <vladimir.oltean@nxp.com>
Mon, 26 Jul 2021 16:55:33 +0000 (19:55 +0300)
committerDavid S. Miller <davem@davemloft.net>
Mon, 26 Jul 2021 21:35:22 +0000 (22:35 +0100)
commite645d2bb609e06ec9a73ff26af5147f454878311
tree14b482829f2597b2d7c1545c08f5e638e8179c5b
parente694f5fa9fd259128f9ffb19e983ed4e5071400e
net: dsa: sja1105: deny more than one VLAN-aware bridge

With tag_sja1105.c's only ability being to perform an imprecise RX
procedure and identify whether a packet comes from a VLAN-aware bridge
or not, we have no way to determine whether a packet with VLAN ID 5
comes from, say, br0 or br1. Actually we could, but it would mean that
we need to restrict all VLANs from br0 to be different from all VLANs
from br1, and this includes the default_pvid, which makes a setup with 2
VLAN-aware bridges highly imprectical.

The fact of the matter is that this isn't even that big of a practical
limitation, since even with a single VLAN-aware bridge we can pretty
much enforce forwarding isolation based on the VLAN port membership.

So in the end, tell the user that they need to model their setup using a
single VLAN-aware bridge.

Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/dsa/sja1105/sja1105_main.c