mbox series

[net,0/2] net: dsa: Avoid VLAN config corruption

Message ID 20210306002455.1582593-1-tobias@waldekranz.com (mailing list archive)
Headers show
Series net: dsa: Avoid VLAN config corruption | expand

Message

Tobias Waldekranz March 6, 2021, 12:24 a.m. UTC
The story here is basically:

1. Bridge port attributes should not be offloaded if an intermediate
   stacked device (a LAG) is not offloaded. (5696c8aedfcc)

2. (1) broke VLAN filtering events from being processed by DSA, we
   must accept that orig_dev can be the bridge itself. (99b8202b179f)

3. (2) broke regular old VLAN configuration, as events generated to
   notify the ports that a new VLAN was created in the bridge were now
   interpreted as that VLAN being added to the port.

Which brings us to this series, which tries to put an end to this saga
by reverting (2) and then provides a new fix for that issue which
accepts that orig_dev may be the bridge master, but only for
applicable attributes, and never for switchdev objects.

I am not really sure about the process here. Is it fine to revert even
if that re-introduces a bug that is then fixed in a followup commit,
or should this be squashed to a single commit?

Tobias Waldekranz (2):
  Revert "net: dsa: fix SWITCHDEV_ATTR_ID_BRIDGE_VLAN_FILTERING getting
    ignored"
  net: dsa: Always react to global bridge attribute changes

 net/dsa/dsa_priv.h | 10 +---------
 net/dsa/slave.c    | 17 +++++++++++++++--
 2 files changed, 16 insertions(+), 11 deletions(-)

Comments

Vladimir Oltean March 6, 2021, 12:41 a.m. UTC | #1
On Sat, Mar 06, 2021 at 01:24:53AM +0100, Tobias Waldekranz wrote:
> The story here is basically:
> 
> 1. Bridge port attributes should not be offloaded if an intermediate
>    stacked device (a LAG) is not offloaded. (5696c8aedfcc)
> 
> 2. (1) broke VLAN filtering events from being processed by DSA, we
>    must accept that orig_dev can be the bridge itself. (99b8202b179f)
> 
> 3. (2) broke regular old VLAN configuration, as events generated to
>    notify the ports that a new VLAN was created in the bridge were now
>    interpreted as that VLAN being added to the port.
> 
> Which brings us to this series, which tries to put an end to this saga
> by reverting (2) and then provides a new fix for that issue which
> accepts that orig_dev may be the bridge master, but only for
> applicable attributes, and never for switchdev objects.
> 
> I am not really sure about the process here. Is it fine to revert even
> if that re-introduces a bug that is then fixed in a followup commit,
> or should this be squashed to a single commit?
> 
> Tobias Waldekranz (2):
>   Revert "net: dsa: fix SWITCHDEV_ATTR_ID_BRIDGE_VLAN_FILTERING getting
>     ignored"
>   net: dsa: Always react to global bridge attribute changes
> 
>  net/dsa/dsa_priv.h | 10 +---------
>  net/dsa/slave.c    | 17 +++++++++++++++--
>  2 files changed, 16 insertions(+), 11 deletions(-)
> 
> -- 
> 2.25.1
> 

I will take a look at these patches tomorrow, David please don't apply
them, I would like to get some sleep first.