summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEliad Peller <eliad@wizery.com>2012-07-02 15:08:25 +0300
committerJohannes Berg <johannes.berg@intel.com>2012-07-06 08:33:05 +0200
commitc62094889f7bb0b3343d5404c9d139d2fb1712bb (patch)
tree62f6aba934821cb9147a17d4d8d6c5d4dade1b4c
parent135792ec246ddd0b2738dd95447297ea0b91943b (diff)
mac80211: always set in_reconfig=false on wakeup
If the interfaces were removed just before a restart work was started, open_count will be 0, and most of the reconfig work will be skipped, including the resetting of local->in_reconfig to false. Leaving local->inconfig = true will result in dropping any incoming packet. Fix it by always setting local->in_reconfig = false (even if there are no active interfaces). Signed-off-by: Eliad Peller <eliad@wizery.com> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
-rw-r--r--net/mac80211/util.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/net/mac80211/util.c b/net/mac80211/util.c
index cb73a0341af..5715e7b3aff 100644
--- a/net/mac80211/util.c
+++ b/net/mac80211/util.c
@@ -1415,10 +1415,10 @@ int ieee80211_reconfig(struct ieee80211_local *local)
if (ieee80211_sdata_running(sdata))
ieee80211_enable_keys(sdata);
+ wake_up:
local->in_reconfig = false;
barrier();
- wake_up:
/*
* Clear the WLAN_STA_BLOCK_BA flag so new aggregation
* sessions can be established after a resume.