summaryrefslogtreecommitdiff
path: root/net/bridge/br_private.h
diff options
context:
space:
mode:
authorStephen Hemminger <shemminger@osdl.org>2006-01-31 17:44:07 -0800
committerDavid S. Miller <davem@davemloft.net>2006-01-31 17:44:07 -0800
commit3f4cfc2d11c9e29709e6f0f3add54039614d847a (patch)
treefe3131288787952d95b578f151dbbf20791951b7 /net/bridge/br_private.h
parent5d39a795bfa217b5f7637028c83ab5cb291f37bf (diff)
downloadlinux-3.10-3f4cfc2d11c9e29709e6f0f3add54039614d847a.tar.gz
linux-3.10-3f4cfc2d11c9e29709e6f0f3add54039614d847a.tar.bz2
linux-3.10-3f4cfc2d11c9e29709e6f0f3add54039614d847a.zip
[BRIDGE]: Fix device delete race.
This is a simpler fix for the two races in bridge device removal. The Xen race of delif and notify is managed now by a new deleted flag. No need for barriers or other locking because of rtnl mutex. The del_timer_sync()'s are unnecessary, because br_stp_disable_port delete's the timers, and they will finish running before RCU callback. Signed-off-by: Stephen Hemminger <shemminger@osdl.org> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/bridge/br_private.h')
-rw-r--r--net/bridge/br_private.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/net/bridge/br_private.h b/net/bridge/br_private.h
index c5bd631ffcd..e330b17b6d8 100644
--- a/net/bridge/br_private.h
+++ b/net/bridge/br_private.h
@@ -68,6 +68,7 @@ struct net_bridge_port
/* STP */
u8 priority;
u8 state;
+ u8 deleted;
u16 port_no;
unsigned char topology_change_ack;
unsigned char config_pending;