aboutsummaryrefslogtreecommitdiffstats
path: root/net/unix
diff options
context:
space:
mode:
authorWANG Cong <[email protected]>2015-10-01 18:37:42 +0000
committerDavid S. Miller <[email protected]>2015-10-05 13:30:33 +0000
commit6bd00b850635abb0044e06101761533c8beba79c (patch)
tree65141acd5f97da77b3b997646ec270b4037ac1bb /net/unix
parenti40e: fix offload of GRE tunnels (diff)
downloadkernel-6bd00b850635abb0044e06101761533c8beba79c.tar.gz
kernel-6bd00b850635abb0044e06101761533c8beba79c.zip
act_mirred: fix a race condition on mirred_list
After commit 1ce87720d456 ("net: sched: make cls_u32 lockless") we began to release tc actions in a RCU callback. However, mirred action relies on RTNL lock to protect the global mirred_list, therefore we could have a race condition between RCU callback and netdevice event, which caused a list corruption as reported by Vinson. Instead of relying on RTNL lock, introduce a spinlock to protect this list. Note, in non-bind case, it is still called with RTNL lock, therefore should disable BH too. Reported-by: Vinson Lee <[email protected]> Cc: John Fastabend <[email protected]> Cc: Jamal Hadi Salim <[email protected]> Signed-off-by: Cong Wang <[email protected]> Signed-off-by: Cong Wang <[email protected]> Acked-by: Jamal Hadi Salim <[email protected]> Signed-off-by: David S. Miller <[email protected]>
Diffstat (limited to 'net/unix')
0 files changed, 0 insertions, 0 deletions