aboutsummaryrefslogtreecommitdiffstats
path: root/net/bridge/br_if.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@woody.linux-foundation.org>2007-04-27 12:26:46 -0400
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-04-27 12:26:46 -0400
commit15c54033964a943de7b0763efd3bd0ede7326395 (patch)
tree840b292612d1b5396d5bab5bde537a9013db3ceb /net/bridge/br_if.c
parentad5da3cf39a5b11a198929be1f2644e17ecd767e (diff)
parent912a41a4ab935ce8c4308428ec13fc7f8b1f18f4 (diff)
Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
* master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6: (448 commits) [IPV4] nl_fib_lookup: Initialise res.r before fib_res_put(&res) [IPV6]: Fix thinko in ipv6_rthdr_rcv() changes. [IPV4]: Add multipath cached to feature-removal-schedule.txt [WIRELESS] cfg80211: Clarify locking comment. [WIRELESS] cfg80211: Fix locking in wiphy_new. [WEXT] net_device: Don't include wext bits if not required. [WEXT]: Misc code cleanups. [WEXT]: Reduce inline abuse. [WEXT]: Move EXPORT_SYMBOL statements where they belong. [WEXT]: Cleanup early ioctl call path. [WEXT]: Remove options. [WEXT]: Remove dead debug code. [WEXT]: Clean up how wext is called. [WEXT]: Move to net/wireless [AFS]: Eliminate cmpxchg() usage in vlocation code. [RXRPC]: Fix pointers passed to bitops. [RXRPC]: Remove bogus atomic_* overrides. [AFS]: Fix u64 printing in debug logging. [AFS]: Add "directory write" support. [AFS]: Implement the CB.InitCallBackState3 operation. ...
Diffstat (limited to 'net/bridge/br_if.c')
-rw-r--r--net/bridge/br_if.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/net/bridge/br_if.c b/net/bridge/br_if.c
index f3a2e29be40c..690573bbf012 100644
--- a/net/bridge/br_if.c
+++ b/net/bridge/br_if.c
@@ -152,6 +152,8 @@ static void del_nbp(struct net_bridge_port *p)
152 br_stp_disable_port(p); 152 br_stp_disable_port(p);
153 spin_unlock_bh(&br->lock); 153 spin_unlock_bh(&br->lock);
154 154
155 br_ifinfo_notify(RTM_DELLINK, p);
156
155 br_fdb_delete_by_port(br, p, 1); 157 br_fdb_delete_by_port(br, p, 1);
156 158
157 list_del_rcu(&p->list); 159 list_del_rcu(&p->list);
@@ -203,7 +205,7 @@ static struct net_device *new_bridge_dev(const char *name)
203 memcpy(br->group_addr, br_group_address, ETH_ALEN); 205 memcpy(br->group_addr, br_group_address, ETH_ALEN);
204 206
205 br->feature_mask = dev->features; 207 br->feature_mask = dev->features;
206 br->stp_enabled = 0; 208 br->stp_enabled = BR_NO_STP;
207 br->designated_root = br->bridge_id; 209 br->designated_root = br->bridge_id;
208 br->root_path_cost = 0; 210 br->root_path_cost = 0;
209 br->root_port = 0; 211 br->root_port = 0;
@@ -434,6 +436,8 @@ int br_add_if(struct net_bridge *br, struct net_device *dev)
434 br_stp_enable_port(p); 436 br_stp_enable_port(p);
435 spin_unlock_bh(&br->lock); 437 spin_unlock_bh(&br->lock);
436 438
439 br_ifinfo_notify(RTM_NEWLINK, p);
440
437 dev_set_mtu(br->dev, br_min_mtu(br)); 441 dev_set_mtu(br->dev, br_min_mtu(br));
438 442
439 kobject_uevent(&p->kobj, KOBJ_ADD); 443 kobject_uevent(&p->kobj, KOBJ_ADD);