diff options
author | Vivien Didelot <vivien.didelot@gmail.com> | 2019-07-08 23:31:13 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2019-07-09 14:49:34 -0700 |
commit | 08cc83cc7fd8e6c3670ff545ef2bbfbc01a02d87 (patch) | |
tree | 41c6023764ea942a7633cb1d369b84afea75af4a /net/dsa/slave.c | |
parent | fbc697796e358d1ed8ed25758b19bdb3a1f8e9f9 (diff) |
net: dsa: add support for BRIDGE_MROUTER attribute
This patch adds support for enabling or disabling the flooding of
unknown multicast traffic on the CPU ports, depending on the value
of the switchdev SWITCHDEV_ATTR_ID_BRIDGE_MROUTER attribute.
The current behavior is kept unchanged but a user can now prevent
the CPU conduit to be flooded with a lot of unregistered traffic that
the network stack needs to filter in software with e.g.:
echo 0 > /sys/class/net/br0/multicast_router
Signed-off-by: Vivien Didelot <vivien.didelot@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/dsa/slave.c')
-rw-r--r-- | net/dsa/slave.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/net/dsa/slave.c b/net/dsa/slave.c index 9bcb598fc840..614c38ece104 100644 --- a/net/dsa/slave.c +++ b/net/dsa/slave.c @@ -301,6 +301,9 @@ static int dsa_slave_port_attr_set(struct net_device *dev, case SWITCHDEV_ATTR_ID_PORT_BRIDGE_FLAGS: ret = dsa_port_bridge_flags(dp, attr->u.brport_flags, trans); break; + case SWITCHDEV_ATTR_ID_BRIDGE_MROUTER: + ret = dsa_port_mrouter(dp->cpu_dp, attr->u.mrouter, trans); + break; default: ret = -EOPNOTSUPP; break; |