]> git.baikalelectronics.ru Git - kernel.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)
committerAntonio Quartulli <antonio@meshcoding.com>
Fri, 14 Aug 2015 20:51:40 +0000 (22:51 +0200)
commit41309b4151e1fb1939eed488e8b841f9857add80
tree92735d9af12d734e2a9146439d1dae940ad95302
parent3cf2b7e6079ca2b93fd68e15e59d4f4789c81575
batman-adv: Make MCAST capability changes atomic

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: 15bc72bd1e49 ("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>
net/batman-adv/multicast.c
net/batman-adv/types.h