Patch "iwlwifi: mvm: free reserved queue on STA removal" has been added to the 4.8-stable tree
Subsystems (2)
This is a note to let you know that I've just added the patch titled
iwlwifi: mvm: free reserved queue on STA removal
to the 4.8-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary
The filename of the patch is:
iwlwifi-mvm-free-reserved-queue-on-sta-removal.patch
and it can be found in the queue-4.8 subdirectory.
If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.
Quoted 1 line
From
a0315dea9091d1ebc1534f6129b3fc9942b8ca99Mon Sep 17 00:00:00 2001
From: Liad Kaufman <[email protected]>
Date: Thu, 7 Jul 2016 13:25:59 +0300
Subject: iwlwifi: mvm: free reserved queue on STA removal
From: Liad Kaufman <[email protected]>
commit a0315dea9091d1ebc1534f6129b3fc9942b8ca99 upstream.
When a STA is removed in DQA mode, if no traffic went through its reserved queue, the txq continues to be marked as reserved and no STA can use it.
Make sure that in such a case the reserved queue is marked as free when the STA is removed.
--- drivers/net/wireless/intel/iwlwifi/mvm/sta.c | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-)
drivers/net/wireless/intel/iwlwifi/mvm/sta.c +23 -1
@@ -1268,9 +1268,31 @@ int iwl_mvm_rm_sta(struct iwl_mvm *mvm, ret =iwl_mvm_drain_sta (mvm, mvm_sta, false);/* If DQA is supported - the queues can be disabled now */ -if (iwl_mvm_is_dqa_supported (mvm)) +if (iwl_mvm_is_dqa_supported (mvm)) { +u8 reserved_txq = mvm_sta->reserved_queue; +enum iwl_mvm_queue_status *status; +iwl_mvm_disable_sta_queues (mvm, vif, mvm_sta); +/* +* If no traffic has gone through the reserved TXQ - it +* is still marked as IWL_MVM_QUEUE_RESERVED, and +* should be manually marked as free again +*/ +spin_lock_bh (&mvm->queue_info_lock); + status = &mvm->queue_info[reserved_txq].status; +if (WARN ((*status !=IWL_MVM_QUEUE_RESERVED ) && + (*status !=IWL_MVM_QUEUE_FREE ), +"sta_id %d reserved txq %d status %d" , + mvm_sta->sta_id, reserved_txq, *status)) { +spin_unlock_bh (&mvm->queue_info_lock); +return -EINVAL ; + } + + *status =IWL_MVM_QUEUE_FREE ; +spin_unlock_bh (&mvm->queue_info_lock); + } +if (vif->type ==NL80211_IFTYPE_STATION && mvmvif->ap_sta_id == mvm_sta->sta_id) {/* if associated - we can't remove the AP STA now */
Patches currently in stable-queue which might be from [email protected] are
queue-4.8/iwlwifi-mvm-free-reserved-queue-on-sta-removal.patch queue-4.8/iwlwifi-mvm-fix-pending-frames-tracking-on-tx-resp.patch