diff options
author | Marek Lindner <mareklindner@neomailbox.ch> | 2015-06-17 20:01:36 +0800 |
---|---|---|
committer | Sasha Levin <sasha.levin@oracle.com> | 2015-10-27 22:13:56 -0400 |
commit | 61b027c7cee9948bbd68d0ca0cca1830ca33d712 (patch) | |
tree | ac0d967e04ae80ba1b5325fff01e9ca4c781fb83 /net/rds/af_rds.c | |
parent | b544c9930ce29ddcd97abc307df72ce5a735f209 (diff) | |
download | linux-rt-61b027c7cee9948bbd68d0ca0cca1830ca33d712.tar.gz |
batman-adv: protect tt_local_entry from concurrent delete events
[ Upstream commit ef72706a0543d0c3a5ab29bd6378fdfb368118d9 ]
The tt_local_entry deletion performed in batadv_tt_local_remove() was neither
protecting against simultaneous deletes nor checking whether the element was
still part of the list before calling hlist_del_rcu().
Replacing the hlist_del_rcu() call with batadv_hash_remove() provides adequate
protection via hash spinlocks as well as an is-element-still-in-hash check to
avoid 'blind' hash removal.
Fixes: 068ee6e204e1 ("batman-adv: roaming handling mechanism redesign")
Reported-by: alfonsname@web.de
Signed-off-by: Marek Lindner <mareklindner@neomailbox.ch>
Signed-off-by: Antonio Quartulli <antonio@meshcoding.com>
Signed-off-by: Sasha Levin <sasha.levin@oracle.com>
Diffstat (limited to 'net/rds/af_rds.c')
0 files changed, 0 insertions, 0 deletions