Browse Source

iwlwifi: mvm: wait for the flushed queue only

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@intel.com>
Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
Sara Sharon 8 năm trước cách đây
mục cha
commit
0b90964a26
1 tập tin đã thay đổi với 1 bổ sung2 xóa
  1. 1 2
      drivers/net/wireless/intel/iwlwifi/mvm/sta.c

+ 1 - 2
drivers/net/wireless/intel/iwlwifi/mvm/sta.c

@@ -2850,8 +2850,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);