On 9/23/20 3:06 PM, Florian Fainelli wrote: > On 9/23/20 3:01 PM, Vladimir Oltean wrote: >> On Wed, Sep 23, 2020 at 02:51:09PM -0700, Florian Fainelli wrote: >>> Speaking of that part of the code, I was also wondering whether you >>> wanted this to be netdev_for_each_upper_dev_rcu(br, upper_dev, iter) and >>> catch a bridge device upper as opposed to a switch port upper? Either >>> way is fine and there are possibly use cases for either. >> >> So, yeah, both use cases are valid, and I did in fact mean uppers of the >> bridge, but now that you're raising the point, do we actually support >> properly the use case with an 8021q upper of a bridged port? My >> understanding is that this VLAN-tagged traffic should not be switched on >> RX. So without some ACL rule on ingress that the driver must install, I >> don't see how that can work properly. > > Is not this a problem only if the DSA master does VLAN receive filtering > though? In a bridge with vlan_filtering=0 the switch port is supposed to > accept any VLAN tagged frames because it does not do ingress VLAN ID > checking. > > Prior to your patch, I would always install a br0.1 upper to pop the > default_pvid and that would work fine because the underlying DSA master > does not do VLAN filtering.
This is kind of a bad example, because the switch port has been added to the default_pvid VLAN entry, but I believe the rest to be correct though. -- Florian