[linux-yocto] [linux-yocto-4.12][PATCH 2/6] iwlwifi: mvm: wait for the flushed queue only

Liwei Song liwei.song at windriver.com
Mon Nov 13 17:14:39 PST 2017

From: Sara Sharon <sara.sharon at intel.com>

commit 0b90964a265d6e0b60182b88f3947c6ef0ae4184 upstream.

The function flushed only agg queue and no more traffic
is queued on it.
However, it waits for all queues to empty, which is not
necessary and may take more time.

Signed-off-by: Sara Sharon <sara.sharon at intel.com>
Signed-off-by: Luca Coelho <luciano.coelho at intel.com>
Signed-off-by: Liwei Song <liwei.song at windriver.com>
 drivers/net/wireless/intel/iwlwifi/mvm/sta.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/net/wireless/intel/iwlwifi/mvm/sta.c b/drivers/net/wireless/intel/iwlwifi/mvm/sta.c
index 8f129bccbced..3695d99d0c92 100644
--- a/drivers/net/wireless/intel/iwlwifi/mvm/sta.c
+++ b/drivers/net/wireless/intel/iwlwifi/mvm/sta.c
@@ -2861,8 +2861,7 @@ int iwl_mvm_sta_tx_agg_flush(struct iwl_mvm *mvm, struct ieee80211_vif *vif,
 		iwl_mvm_drain_sta(mvm, mvmsta, true);
 		if (iwl_mvm_flush_tx_path(mvm, BIT(txq_id), 0))
 			IWL_ERR(mvm, "Couldn't flush the AGG queue\n");
-		iwl_trans_wait_tx_queues_empty(mvm->trans,
-					       mvmsta->tfd_queue_msk);
+		iwl_trans_wait_tx_queues_empty(mvm->trans, BIT(txq_id));
 		iwl_mvm_drain_sta(mvm, mvmsta, false);
 		iwl_mvm_sta_tx_agg(mvm, sta, tid, txq_id, false);

More information about the linux-yocto mailing list