dsa: port: Ignore bridge VLAN events
authorPetr Machata <petrm@mellanox.com>
Wed, 30 May 2018 00:59:26 +0000 (02:59 +0200)
committerDavid S. Miller <davem@davemloft.net>
Thu, 31 May 2018 18:13:43 +0000 (14:13 -0400)
A follow-up patch enables emitting VLAN notifications for the bridge CPU
port in addition to the existing slave port notifications. These
notifications have orig_dev set to the bridge in question.

Because there's no specific support for these VLANs, just ignore the
notifications to maintain the current behavior.

Signed-off-by: Petr Machata <petrm@mellanox.com>
Reviewed-by: Vivien Didelot <vivien.didelot@savoirfairelinux.com>
Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/dsa/port.c

index 2413beb..ed05954 100644 (file)
@@ -252,6 +252,9 @@ int dsa_port_vlan_add(struct dsa_port *dp,
                .vlan = vlan,
        };
 
+       if (netif_is_bridge_master(vlan->obj.orig_dev))
+               return -EOPNOTSUPP;
+
        if (br_vlan_enabled(dp->bridge_dev))
                return dsa_port_notify(dp, DSA_NOTIFIER_VLAN_ADD, &info);
 
@@ -267,6 +270,9 @@ int dsa_port_vlan_del(struct dsa_port *dp,
                .vlan = vlan,
        };
 
+       if (netif_is_bridge_master(vlan->obj.orig_dev))
+               return -EOPNOTSUPP;
+
        if (br_vlan_enabled(dp->bridge_dev))
                return dsa_port_notify(dp, DSA_NOTIFIER_VLAN_DEL, &info);