]> git.baikalelectronics.ru Git - kernel.git/commit
mac80211: Run TXQ teardown code before de-registering interfaces
authorToke Høiland-Jørgensen <toke@toke.dk>
Mon, 13 Aug 2018 12:16:25 +0000 (14:16 +0200)
committerJohannes Berg <johannes.berg@intel.com>
Tue, 14 Aug 2018 12:00:07 +0000 (14:00 +0200)
commitd14f2c9a24cf6e82b2780b3581f73a582c5497fb
treed11dc2f1e9a73dd1c463a544028845afddffe39d
parenteada6149df048b2d405a5a01e45e3326c232a74b
mac80211: Run TXQ teardown code before de-registering interfaces

The TXQ teardown code can reference the vif data structures that are
stored in the netdev private memory area if there are still packets on
the queue when it is being freed. Since the TXQ teardown code is run
after the netdevs are freed, this can lead to a use-after-free. Fix this
by moving the TXQ teardown code to earlier in ieee80211_unregister_hw().

Reported-by: Ben Greear <greearb@candelatech.com>
Tested-by: Ben Greear <greearb@candelatech.com>
Signed-off-by: Toke Høiland-Jørgensen <toke@toke.dk>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
net/mac80211/main.c