bridge: fix RCU races with bridge port
authorstephen hemminger <shemminger@vyatta.com>
Mon, 15 Nov 2010 06:38:13 +0000 (06:38 +0000)
committerDavid S. Miller <davem@davemloft.net>
Mon, 15 Nov 2010 19:13:17 +0000 (11:13 -0800)
commitb5ed54e94d324f17c97852296d61a143f01b227a
tree2104d3cde24efc1145bc71beb4b61d79ed841132
parent61391cde9eefac5cfcf6d214aa80c77e58b1626b
bridge: fix RCU races with bridge port

The macro br_port_exists() is not enough protection when only
RCU is being used. There is a tiny race where other CPU has cleared port
handler hook, but is bridge port flag might still be set.

Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/bridge/br_fdb.c
net/bridge/br_if.c
net/bridge/br_netfilter.c
net/bridge/br_netlink.c
net/bridge/br_notify.c
net/bridge/br_private.h
net/bridge/br_stp_bpdu.c
net/bridge/netfilter/ebtables.c