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>
This commit is contained in:
parent
135792ec24
commit
c62094889f
|
@ -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.
|
||||||
|
|
Loading…
Reference in a new issue