aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/intel/iwlwifi/mvm/ops.c
diff options
context:
space:
mode:
authorAlexander Wetzel <[email protected]>2023-03-14 21:11:22 +0000
committerJohannes Berg <[email protected]>2023-03-15 12:42:43 +0000
commit007ae9b268ba7553e479608cf9735d3c4672a2ab (patch)
treedc772141e5894dc9df8541f1e7829805651cb103 /drivers/net/wireless/intel/iwlwifi/mvm/ops.c
parentwifi: mwifiex: mark OF related data as maybe unused (diff)
downloadkernel-007ae9b268ba7553e479608cf9735d3c4672a2ab.tar.gz
kernel-007ae9b268ba7553e479608cf9735d3c4672a2ab.zip
wifi: mac80211: Serialize ieee80211_handle_wake_tx_queue()
ieee80211_handle_wake_tx_queue must not run concurrent multiple times. It calls ieee80211_txq_schedule_start() and the drivers migrated to iTXQ do not expect overlapping drv_tx() calls. This fixes 'c850e31f79f0 ("wifi: mac80211: add internal handler for wake_tx_queue")', which introduced ieee80211_handle_wake_tx_queue. Drivers started to use it with 'a790cc3a4fad ("wifi: mac80211: add wake_tx_queue callback to drivers")'. But only after fixing an independent bug with '4444bc2116ae ("wifi: mac80211: Proper mark iTXQs for resumption")' problematic concurrent calls really happened and exposed the initial issue. Fixes: c850e31f79f0 ("wifi: mac80211: add internal handler for wake_tx_queue") Reported-by: Thomas Mann <[email protected]> Link: https://bugzilla.kernel.org/show_bug.cgi?id=217119 Link: https://lore.kernel.org/r/[email protected]/ Link: https://lore.kernel.org/r/[email protected]> CC: <[email protected]> Signed-off-by: Alexander Wetzel <[email protected]> Link: https://lore.kernel.org/r/[email protected] [add missing spin_lock_init() noticed by Felix] Signed-off-by: Johannes Berg <[email protected]>
Diffstat (limited to 'drivers/net/wireless/intel/iwlwifi/mvm/ops.c')
0 files changed, 0 insertions, 0 deletions