batman-adv: Correct rcu refcounting for gw_node
authorMarek Lindner <lindner_marek@yahoo.de>
Thu, 10 Feb 2011 14:33:49 +0000 (14:33 +0000)
committerMarek Lindner <lindner_marek@yahoo.de>
Sat, 5 Mar 2011 11:50:04 +0000 (12:50 +0100)
commit25b6d3c17eaa92ae9700eb8235bc79782613354a
tree1c9949a6adf8144f77b91e9f3a785d0557525f39
parent44524fcdf6ca19b58c24f7622c4af1d8d8fe59f8
batman-adv: Correct rcu refcounting for gw_node

It might be possible that 2 threads access the same data in the same
rcu grace period. The first thread calls call_rcu() to decrement the
refcount and free the data while the second thread increases the
refcount to use the data. To avoid this race condition all refcount
operations have to be atomic.

Reported-by: Sven Eckelmann <sven@narfation.org>
Signed-off-by: Marek Lindner <lindner_marek@yahoo.de>
net/batman-adv/gateway_client.c
net/batman-adv/types.h