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. -- Florian