]> git.baikalelectronics.ru Git - kernel.git/commit
mac80211: agg-tx: call drv_wake_tx_queue in proper context
authorJohannes Berg <johannes.berg@intel.com>
Thu, 22 Jun 2017 10:20:28 +0000 (12:20 +0200)
committerJohannes Berg <johannes.berg@intel.com>
Tue, 5 Sep 2017 14:25:07 +0000 (16:25 +0200)
commitca008d2bb1aedc66ed145d37e3b4d00c057f9f68
tree3a034726fb51744f3ea0ee9b81b3f96f118853c7
parentef1a0b61dd2396cd8e206880ec4b1e58c97a2bd2
mac80211: agg-tx: call drv_wake_tx_queue in proper context

Since drv_wake_tx_queue() is normally called in the TX path, which
is already in an RCU critical section, we should call it the same
way in the aggregation code path, so if the driver expects to be
able to use RCU, it'll already be protected without having to enter
a nested critical section.

Additionally, disable soft-IRQs, since not doing so could cause
issues in a driver that relies on them already being disabled like
in the other path.

Fixes: 55b67734d7b2 ("mac80211: add an intermediate software queue implementation")
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
net/mac80211/agg-tx.c