diff options
author | Marek Lindner <mareklindner@neomailbox.ch> | 2015-06-17 15:01:36 +0300 |
---|---|---|
committer | Antonio Quartulli <antonio@meshcoding.com> | 2015-08-05 01:31:47 +0300 |
commit | ef72706a0543d0c3a5ab29bd6378fdfb368118d9 (patch) | |
tree | 5a485c9fbb22698333415e7804510ff108d21e20 /net/bluetooth | |
parent | 354136bcc3c4f40a2813bba8f57ca5267d812d15 (diff) | |
download | linux-ef72706a0543d0c3a5ab29bd6378fdfb368118d9.tar.xz |
batman-adv: protect tt_local_entry from concurrent delete events
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>
Diffstat (limited to 'net/bluetooth')
0 files changed, 0 insertions, 0 deletions