summaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/iwlwifi/iwl-dev.h
diff options
context:
space:
mode:
authorIlan Peer <ilan.peer@intel.com>2012-05-09 16:11:55 +0300
committerJohannes Berg <johannes.berg@intel.com>2012-06-06 13:03:54 +0200
commit622a9268231bd6b486ec058a28f773fa89926012 (patch)
tree57c0eda48dfa100c44611ba7a88998009b7adfb4 /drivers/net/wireless/iwlwifi/iwl-dev.h
parente19ebcab01cc130fa832764d453b263460ec3b91 (diff)
downloadlinux-622a9268231bd6b486ec058a28f773fa89926012.tar.gz
linux-622a9268231bd6b486ec058a28f773fa89926012.tar.bz2
linux-622a9268231bd6b486ec058a28f773fa89926012.zip
iwlwifi: handle race condition in ROC flow
When a remain on channel request from mac80211 is followed by a request to tx a mgmt frame offchannel, it is possible that the remain on channel expires before the device reported the tx status for the frame. This causes a race condition in mac80211. To fix this, delay the ROC notification to mac80211 until the device reported the Tx status for all frames in the aux queue. Reviewed-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com> Signed-off-by: Ilan Peer <ilan.peer@intel.com> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'drivers/net/wireless/iwlwifi/iwl-dev.h')
-rw-r--r--drivers/net/wireless/iwlwifi/iwl-dev.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-dev.h b/drivers/net/wireless/iwlwifi/iwl-dev.h
index 70062379d0ec..a4936a134162 100644
--- a/drivers/net/wireless/iwlwifi/iwl-dev.h
+++ b/drivers/net/wireless/iwlwifi/iwl-dev.h
@@ -846,6 +846,7 @@ struct iwl_priv {
struct iwl_station_entry stations[IWLAGN_STATION_COUNT];
unsigned long ucode_key_table;
struct iwl_tid_data tid_data[IWLAGN_STATION_COUNT][IWL_MAX_TID_COUNT];
+ atomic_t num_aux_in_flight;
u8 mac80211_registered;