aboutsummaryrefslogtreecommitdiffstats
path: root/net/bridge/br_if.c
diff options
context:
space:
mode:
Diffstat (limited to 'net/bridge/br_if.c')
-rw-r--r--net/bridge/br_if.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/net/bridge/br_if.c b/net/bridge/br_if.c
index 5dbdfdfc3a3..1bacca4cb67 100644
--- a/net/bridge/br_if.c
+++ b/net/bridge/br_if.c
@@ -147,6 +147,7 @@ static void del_nbp(struct net_bridge_port *p)
147 dev->priv_flags &= ~IFF_BRIDGE_PORT; 147 dev->priv_flags &= ~IFF_BRIDGE_PORT;
148 148
149 netdev_rx_handler_unregister(dev); 149 netdev_rx_handler_unregister(dev);
150 synchronize_net();
150 151
151 netdev_set_master(dev, NULL); 152 netdev_set_master(dev, NULL);
152 153
@@ -338,6 +339,8 @@ int br_add_if(struct net_bridge *br, struct net_device *dev)
338 if (IS_ERR(p)) 339 if (IS_ERR(p))
339 return PTR_ERR(p); 340 return PTR_ERR(p);
340 341
342 call_netdevice_notifiers(NETDEV_JOIN, dev);
343
341 err = dev_set_promiscuity(dev, 1); 344 err = dev_set_promiscuity(dev, 1);
342 if (err) 345 if (err)
343 goto put_back; 346 goto put_back;