diff options
author | Linus Lüssing <linus.luessing@c0d3.blue> | 2015-06-16 17:10:25 +0200 |
---|---|---|
committer | Antonio Quartulli <antonio@meshcoding.com> | 2015-08-14 22:51:40 +0200 |
commit | 9c936e3f4c4fad07abb6c082a89508b8f724c88f (patch) | |
tree | 92735d9af12d734e2a9146439d1dae940ad95302 /net/batman-adv/types.h | |
parent | ac4eebd48461ec993e7cb614d5afe7df8c72e6b7 (diff) | |
download | op-kernel-dev-9c936e3f4c4fad07abb6c082a89508b8f724c88f.zip op-kernel-dev-9c936e3f4c4fad07abb6c082a89508b8f724c88f.tar.gz |
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: 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>
Diffstat (limited to 'net/batman-adv/types.h')
-rw-r--r-- | net/batman-adv/types.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/batman-adv/types.h b/net/batman-adv/types.h index 6f801ef..1eeed18 100644 --- a/net/batman-adv/types.h +++ b/net/batman-adv/types.h @@ -316,7 +316,7 @@ enum batadv_orig_capabilities { BATADV_ORIG_CAPA_HAS_DAT, BATADV_ORIG_CAPA_HAS_NC, BATADV_ORIG_CAPA_HAS_TT, - BATADV_ORIG_CAPA_HAS_MCAST = BIT(3), + BATADV_ORIG_CAPA_HAS_MCAST, }; /** |