diff options
author | David S. Miller <davem@davemloft.net> | 2008-07-06 08:08:07 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-07-06 08:08:07 +0200 |
commit | ea2aca084ba82aaf7c148d04914ceed8758ce08a (patch) | |
tree | dcb3f4f849cf48deac2dd3bafd5c2cd2f0e7dc79 /net/bridge | |
parent | Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/linville... (diff) | |
parent | fs_enet: restore promiscuous and multicast settings in restart() (diff) | |
download | linux-ea2aca084ba82aaf7c148d04914ceed8758ce08a.tar.xz linux-ea2aca084ba82aaf7c148d04914ceed8758ce08a.zip |
Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
Conflicts:
Documentation/feature-removal-schedule.txt
drivers/net/wan/hdlc_fr.c
drivers/net/wireless/iwlwifi/iwl-4965.c
drivers/net/wireless/iwlwifi/iwl3945-base.c
Diffstat (limited to 'net/bridge')
-rw-r--r-- | net/bridge/br_if.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/net/bridge/br_if.c b/net/bridge/br_if.c index 832a561500d9..497df086141a 100644 --- a/net/bridge/br_if.c +++ b/net/bridge/br_if.c @@ -441,12 +441,16 @@ int br_del_if(struct net_bridge *br, struct net_device *dev) void __exit br_cleanup_bridges(void) { - struct net_device *dev, *nxt; + struct net_device *dev; rtnl_lock(); - for_each_netdev_safe(&init_net, dev, nxt) - if (dev->priv_flags & IFF_EBRIDGE) +restart: + for_each_netdev(&init_net, dev) { + if (dev->priv_flags & IFF_EBRIDGE) { del_br(dev->priv); + goto restart; + } + } rtnl_unlock(); } |