]> git.baikalelectronics.ru Git - kernel.git/commit
mac80211: move 4-addr sta pointer clearing before synchronize_rcu()
authorJohannes Berg <johannes.berg@intel.com>
Wed, 4 Dec 2013 19:11:06 +0000 (20:11 +0100)
committerJohannes Berg <johannes.berg@intel.com>
Mon, 16 Dec 2013 10:29:45 +0000 (11:29 +0100)
commit43d07c3d4d7c0571a240160924de1698e1d849a8
tree1b125791f1a332af6a219bca9072bd7085d28f92
parent3cce20e77f7856bd1883cda6c4919a0b5fd00b47
mac80211: move 4-addr sta pointer clearing before synchronize_rcu()

The pointer should be cleared before synchronize_rcu() so that the
consequently dead station won't be found by any lookups in the TX
or RX paths.

Also check that the station is actually the one being removed, the
check is not needed because each 4-addr VLAN can only have a single
station and non-4-addr VLANs always have a NULL pointer there, but
the code is clearer this way (and we avoid the memory write.)

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
net/mac80211/sta_info.c