summary refs log tree commit diff
path: root/net/bridge
diff options
context:
space:
mode:
authorPetr Machata <petrm@mellanox.com>2018-05-10 13:13:03 +0300
committerDavid S. Miller <davem@davemloft.net>2018-05-10 17:50:51 -0400
commit2b18d79e733fd727378aea7927536fb270c7ccbc (patch)
tree2dfb468c2e62fe8ab26b2c7105b9928ae195c3cb /net/bridge
parent00483690552c5fb6aa30bf3acb75b0ee89b4c0fd (diff)
downloadlinux-2b18d79e733fd727378aea7927536fb270c7ccbc.tar.gz
net: bridge: Allow bridge master in br_vlan_get_info()
Mirroring offload in mlxsw needs to check that a given VLAN is allowed
to ingress the bridge device. br_vlan_get_info() is the function that is
used for this, however currently it only supports bridge port devices.
Extend it to support bridge masters as well.

Signed-off-by: Petr Machata <petrm@mellanox.com>
Signed-off-by: Ido Schimmel <idosch@mellanox.com>
Acked-by: Nikolay Aleksandrov <nikolay@cumulusnetworks.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/bridge')
-rw-r--r--net/bridge/br_vlan.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/net/bridge/br_vlan.c b/net/bridge/br_vlan.c
index df37a5137c25..dc832c0934c6 100644
--- a/net/bridge/br_vlan.c
+++ b/net/bridge/br_vlan.c
@@ -1176,6 +1176,8 @@ int br_vlan_get_info(const struct net_device *dev, u16 vid,
 	p = br_port_get_check_rtnl(dev);
 	if (p)
 		vg = nbp_vlan_group(p);
+	else if (netif_is_bridge_master(dev))
+		vg = br_vlan_group(netdev_priv(dev));
 	else
 		return -EINVAL;