summaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/iwlwifi
diff options
context:
space:
mode:
authorEmmanuel Grumbach2015-01-20 08:25:19 +0100
committerEmmanuel Grumbach2015-01-22 16:55:17 +0100
commit6d440b2559c9e477ff11b40c6f2dd69193d46161 (patch)
tree0de75b6fed9d89f252955c220c3699b4e32314ed /drivers/net/wireless/iwlwifi
parentiwlwifi: mvm: add support for new LTR command (diff)
downloadkernel-qcow2-linux-6d440b2559c9e477ff11b40c6f2dd69193d46161.tar.gz
kernel-qcow2-linux-6d440b2559c9e477ff11b40c6f2dd69193d46161.tar.xz
kernel-qcow2-linux-6d440b2559c9e477ff11b40c6f2dd69193d46161.zip
Revert "iwlwifi: mvm: drop non VO frames when flushing"
This is now implemented by mac80211 (commit below). mac80211 will flush/drop the frames on the queues before suspending / disconnecting. It will then send the deauth and wait until the queues are empty. commit 3b24f4c65386dc0f2efb41027bc6e410ea2c0049 Author: Emmanuel Grumbach <emmanuel.grumbach@intel.com> Date: Wed Jan 7 15:42:39 2015 +0200 mac80211: let flush() drop packets when possible This reverts commit 4e6c48e0984e28d064ee8fbc292aee7b7920c507.
Diffstat (limited to 'drivers/net/wireless/iwlwifi')
-rw-r--r--drivers/net/wireless/iwlwifi/mvm/mac80211.c20
1 files changed, 11 insertions, 9 deletions
diff --git a/drivers/net/wireless/iwlwifi/mvm/mac80211.c b/drivers/net/wireless/iwlwifi/mvm/mac80211.c
index 2c79ad360cd9..cef6f3373542 100644
--- a/drivers/net/wireless/iwlwifi/mvm/mac80211.c
+++ b/drivers/net/wireless/iwlwifi/mvm/mac80211.c
@@ -3565,16 +3565,18 @@ static void iwl_mvm_mac_flush(struct ieee80211_hw *hw,
msk |= mvmsta->tfd_queue_msk;
}
- msk &= ~BIT(vif->hw_queue[IEEE80211_AC_VO]);
-
- if (iwl_mvm_flush_tx_path(mvm, msk, true))
- IWL_ERR(mvm, "flush request fail\n");
- mutex_unlock(&mvm->mutex);
+ if (drop) {
+ if (iwl_mvm_flush_tx_path(mvm, msk, true))
+ IWL_ERR(mvm, "flush request fail\n");
+ mutex_unlock(&mvm->mutex);
+ } else {
+ mutex_unlock(&mvm->mutex);
- /* this can take a while, and we may need/want other operations
- * to succeed while doing this, so do it without the mutex held
- */
- iwl_trans_wait_tx_queue_empty(mvm->trans, msk);
+ /* this can take a while, and we may need/want other operations
+ * to succeed while doing this, so do it without the mutex held
+ */
+ iwl_trans_wait_tx_queue_empty(mvm->trans, msk);
+ }
}
const struct ieee80211_ops iwl_mvm_hw_ops = {