Re: [PATCH v8 net-next 05/12] net: dsa: propagate the locked flag down through the DSA layer

netdev
2022-10-20T19:44:41Z

On 2022-10-20 15:02, Vladimir Oltean wrote:

>> --- a/net/dsa/port.c
>> +++ b/net/dsa/port.c
>> @@ -304,7 +304,7 @@ static int dsa_port_inherit_brport_flags(struct
>> dsa_port *dp,
>> struct netlink_ext_ack *extack)
>> {
>> const unsigned long mask = BR_LEARNING | BR_FLOOD | BR_MCAST_FLOOD |
>> - BR_BCAST_FLOOD | BR_PORT_LOCKED;
>> + BR_BCAST_FLOOD;
>> struct net_device *brport_dev = dsa_port_to_bridge_port(dp);
>> int flag, err;
>>
>> @@ -328,7 +328,7 @@ static void dsa_port_clear_brport_flags(struct
>> dsa_port *dp)
>> {
>> const unsigned long val = BR_FLOOD | BR_MCAST_FLOOD |
>> BR_BCAST_FLOOD;
>> const unsigned long mask = BR_LEARNING | BR_FLOOD | BR_MCAST_FLOOD |
>> - BR_BCAST_FLOOD | BR_PORT_LOCKED;
>> + BR_BCAST_FLOOD | BR_PORT_LOCKED | BR_PORT_MAB;
>
> Why does the mask of cleared brport flags differ from the one of set
> brport flags, and what/where is the explanation for this change?
>

I guess you mean, why it differs from the inherit flag mask list?

If so it is explained in the update to v7 in 00/12.