diff options
author | Eliad Peller <eliad@wizery.com> | 2012-07-18 15:36:04 +0300 |
---|---|---|
committer | Johannes Berg <johannes.berg@intel.com> | 2012-07-18 17:03:51 +0200 |
commit | 99102bd380f27b8dd5e058e69e3203bfad0cad94 (patch) | |
tree | 49e06cf4d57c40ee9b2be5f0efe8b4f9eb519b57 | |
parent | ebd0fd2b1a30aa836c28e758d8a57ecdfa85052f (diff) | |
download | linux-99102bd380f27b8dd5e058e69e3203bfad0cad94.tar.gz linux-99102bd380f27b8dd5e058e69e3203bfad0cad94.tar.bz2 linux-99102bd380f27b8dd5e058e69e3203bfad0cad94.zip |
mac80211: flush stations before stop beaconing
When AP interface is going down, the stations
are flushed (in ieee80211_do_stop()) only after
the beaconing was stopped.
However, drivers might rely on stations being
removed before the beaconing was stopped, in
order to clean up properly.
Fix it by flushing the stations on ap stop.
(we already do the same for other interface
types, e.g. in ieee80211_set_disassoc())
Signed-off-by: Eliad Peller <eliad@wizery.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
-rw-r--r-- | net/mac80211/cfg.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/net/mac80211/cfg.c b/net/mac80211/cfg.c index efbbdc8a2be0..d41974aacf51 100644 --- a/net/mac80211/cfg.c +++ b/net/mac80211/cfg.c @@ -917,6 +917,7 @@ static int ieee80211_stop_ap(struct wiphy *wiphy, struct net_device *dev) kfree_rcu(old, rcu_head); + sta_info_flush(sdata->local, sdata); ieee80211_bss_info_change_notify(sdata, BSS_CHANGED_BEACON_ENABLED); return 0; |