Messages in this thread | | | Date | Fri, 26 Nov 2021 11:43:36 -0800 | From | Jakub Kicinski <> | Subject | Re: [PATCH net v3 1/1] net: dsa: microchip: implement multi-bridge support |
| |
On Fri, 26 Nov 2021 13:39:26 +0100 Oleksij Rempel wrote: > Current driver version is able to handle only one bridge at time. > Configuring two bridges on two different ports would end up shorting this > bridges by HW. To reproduce it: > > ip l a name br0 type bridge > ip l a name br1 type bridge > ip l s dev br0 up > ip l s dev br1 up > ip l s lan1 master br0 > ip l s dev lan1 up > ip l s lan2 master br1 > ip l s dev lan2 up > > Ping on lan1 and get response on lan2, which should not happen. > > This happened, because current driver version is storing one global "Port VLAN > Membership" and applying it to all ports which are members of any > bridge. > To solve this issue, we need to handle each port separately. > > This patch is dropping the global port member storage and calculating > membership dynamically depending on STP state and bridge participation. > > Note: STP support was broken before this patch and should be fixed > separately. > > Fixes: c2e866911e25 ("net: dsa: microchip: break KSZ9477 DSA driver into two files")
Suspicious, this sounds like a code reshuffling commit. Where was the bad code introduced? The fixes tag should point at the earliest point in the git history where the problem exists.
| |