]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
batman-adv: Make MCAST capability changes atomic
authorLinus Lüssing <linus.luessing@c0d3.blue>
Tue, 16 Jun 2015 15:10:25 +0000 (17:10 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 22 Oct 2015 21:49:31 +0000 (14:49 -0700)
commitb727c45c545b971f71612b544cea66ce7ab7a102
treea50dee69bd82a26066bea4f9a4df30697321b2a4
parentc3e23f23c566dfa2d3dcd0f172973729e0838090
batman-adv: Make MCAST capability changes atomic

commit 9c936e3f4c4fad07abb6c082a89508b8f724c88f upstream.

Bitwise OR/AND assignments in C aren't guaranteed to be atomic. One
OGM handler might undo the set/clear of a specific bit from another
handler run in between.

Fix this by using the atomic set_bit()/clear_bit()/test_bit() functions.

Fixes: 60432d756cf0 ("batman-adv: Announce new capability via multicast TVLV")
Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
Signed-off-by: Marek Lindner <mareklindner@neomailbox.ch>
Signed-off-by: Antonio Quartulli <antonio@meshcoding.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
net/batman-adv/multicast.c
net/batman-adv/types.h