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.

Reply via email to