linux/net/batman-adv
Linus Lüssing 4635469f5c batman-adv: Make NC 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: 3f4841ffb3 ("batman-adv: tvlv - add network coding container")
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>
2015-08-14 22:50:43 +02:00
..
bat_algo.h batman-adv: update copyright years for 2015 2015-05-29 10:13:35 +02:00
bat_iv_ogm.c batman-adv: Clarify calculation precedence for '&' and '?' 2015-06-07 17:07:19 +02:00
bitarray.c batman-adv: Add required includes to all files 2015-06-07 17:07:19 +02:00
bitarray.h batman-adv: Add required includes to all files 2015-06-07 17:07:19 +02:00
bridge_loop_avoidance.c batman-adv: Add required includes to all files 2015-06-07 17:07:19 +02:00
bridge_loop_avoidance.h batman-adv: Add required includes to all files 2015-06-07 17:07:19 +02:00
debugfs.c batman-adv: Add required includes to all files 2015-06-07 17:07:19 +02:00
debugfs.h batman-adv: Add required includes to all files 2015-06-07 17:07:19 +02:00
distributed-arp-table.c batman-adv: Make DAT capability changes atomic 2015-08-14 22:50:42 +02:00
distributed-arp-table.h batman-adv: Add required includes to all files 2015-06-07 17:07:19 +02:00
fragmentation.c batman-adv: Add required includes to all files 2015-06-07 17:07:19 +02:00
fragmentation.h batman-adv: Add required includes to all files 2015-06-07 17:07:19 +02:00
gateway_client.c batman-adv: Avoid u32 overflow during gateway select 2015-08-11 18:10:04 +02:00
gateway_client.h batman-adv: Add required includes to all files 2015-06-07 17:07:19 +02:00
gateway_common.c batman-adv: Add required includes to all files 2015-06-07 17:07:19 +02:00
gateway_common.h batman-adv: Add required includes to all files 2015-06-07 17:07:19 +02:00
hard-interface.c batman-adv: Add required includes to all files 2015-06-07 17:07:19 +02:00
hard-interface.h batman-adv: Add required includes to all files 2015-06-07 17:07:19 +02:00
hash.c batman-adv: Add required includes to all files 2015-06-07 17:07:19 +02:00
hash.h batman-adv: Add required includes to all files 2015-06-07 17:07:19 +02:00
icmp_socket.c batman-adv: Add required includes to all files 2015-06-07 17:07:19 +02:00
icmp_socket.h batman-adv: Add required includes to all files 2015-06-07 17:07:19 +02:00
Kconfig batman-adv: Kconfig, Add missing DEBUG_FS dependency 2015-01-07 22:17:11 +01:00
main.c batman-adv: Add required includes to all files 2015-06-07 17:07:19 +02:00
main.h batman-adv: Clarify calculation precedence for '&' and '?' 2015-06-07 17:07:19 +02:00
Makefile batman-adv: Makefile, Sort alphabetically 2015-05-29 10:13:36 +02:00
multicast.c batman-adv: Add required includes to all files 2015-06-07 17:07:19 +02:00
multicast.h batman-adv: Add required includes to all files 2015-06-07 17:07:19 +02:00
network-coding.c batman-adv: Make NC capability changes atomic 2015-08-14 22:50:43 +02:00
network-coding.h batman-adv: Add required includes to all files 2015-06-07 17:07:19 +02:00
originator.c batman-adv: Add required includes to all files 2015-06-07 17:07:19 +02:00
originator.h batman-adv: Add required includes to all files 2015-06-07 17:07:19 +02:00
packet.h batman-adv: Add required includes to all files 2015-06-07 17:07:19 +02:00
routing.c batman-adv: Add required includes to all files 2015-06-07 17:07:19 +02:00
routing.h batman-adv: Add required includes to all files 2015-06-07 17:07:19 +02:00
send.c batman-adv: Add required includes to all files 2015-06-07 17:07:19 +02:00
send.h batman-adv: Add required includes to all files 2015-06-07 17:07:19 +02:00
soft-interface.c batman-adv: change the MAC of each VLAN upon ndo_set_mac_address 2015-06-07 17:07:20 +02:00
soft-interface.h batman-adv: Add required includes to all files 2015-06-07 17:07:19 +02:00
sysfs.c batman-adv: Add required includes to all files 2015-06-07 17:07:19 +02:00
sysfs.h batman-adv: Add required includes to all files 2015-06-07 17:07:19 +02:00
translation-table.c batman-adv: Clarify calculation precedence for '&' and '?' 2015-06-07 17:07:19 +02:00
translation-table.h batman-adv: Add required includes to all files 2015-06-07 17:07:19 +02:00
types.h batman-adv: Make NC capability changes atomic 2015-08-14 22:50:43 +02:00