Commit c6209488 authored by Eliad Peller's avatar Eliad Peller Committed by Johannes Berg

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: default avatarEliad Peller <eliad@wizery.com>
Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
parent 135792ec
...@@ -1415,10 +1415,10 @@ int ieee80211_reconfig(struct ieee80211_local *local) ...@@ -1415,10 +1415,10 @@ int ieee80211_reconfig(struct ieee80211_local *local)
if (ieee80211_sdata_running(sdata)) if (ieee80211_sdata_running(sdata))
ieee80211_enable_keys(sdata); ieee80211_enable_keys(sdata);
wake_up:
local->in_reconfig = false; local->in_reconfig = false;
barrier(); barrier();
wake_up:
/* /*
* Clear the WLAN_STA_BLOCK_BA flag so new aggregation * Clear the WLAN_STA_BLOCK_BA flag so new aggregation
* sessions can be established after a resume. * sessions can be established after a resume.
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment