diff options
author | Vladimir Oltean <vladimir.oltean@nxp.com> | 2021-04-21 21:44:20 +0300 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2021-05-19 11:56:45 +0300 |
commit | 7a7739b266d434a69de9d09f1be63ff6fc44a3e3 (patch) | |
tree | 7bd7883482191f0d13f576a404ebb810e72d045d | |
parent | ef43e4db6e875c6d899a65352b872be994c20a14 (diff) | |
download | linux-7a7739b266d434a69de9d09f1be63ff6fc44a3e3.tar.xz |
net: bridge: fix error in br_multicast_add_port when CONFIG_NET_SWITCHDEV=n
commit 68f5c12abbc9b6f8c5eea16c62f8b7be70793163 upstream.
When CONFIG_NET_SWITCHDEV is disabled, the shim for switchdev_port_attr_set
inside br_mc_disabled_update returns -EOPNOTSUPP. This is not caught,
and propagated to the caller of br_multicast_add_port, preventing ports
from joining the bridge.
Reported-by: Christian Borntraeger <borntraeger@de.ibm.com>
Fixes: ae1ea84b33da ("net: bridge: propagate error code and extack from br_mc_disabled_update")
Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
Acked-by: Florian Fainelli <f.fainelli@gmail.com>
Tested-by: Christian Borntraeger <borntraeger@de.ibm.com>
Acked-by: Nikolay Aleksandrov <nikolay@nvidia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r-- | net/bridge/br_multicast.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/bridge/br_multicast.c b/net/bridge/br_multicast.c index 72b3193b08ec..226bb05c3b42 100644 --- a/net/bridge/br_multicast.c +++ b/net/bridge/br_multicast.c @@ -1625,7 +1625,7 @@ int br_multicast_add_port(struct net_bridge_port *port) br_opt_get(port->br, BROPT_MULTICAST_ENABLED), NULL); - if (err) + if (err && err != -EOPNOTSUPP) return err; port->mcast_stats = netdev_alloc_pcpu_stats(struct bridge_mcast_stats); |