summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJohannes Berg <johannes.berg@intel.com>2013-02-23 01:17:56 +0100
committerJohannes Berg <johannes.berg@intel.com>2013-03-06 16:36:01 +0100
commit1861b8455351cd426fb7dec8743ac312aafbe93d (patch)
tree438ed1134efa96732c3f3a4a938aa74f08c011b2
parentmac80211: flush keys when stopping AP (diff)
downloadlinux-1861b8455351cd426fb7dec8743ac312aafbe93d.tar.xz
linux-1861b8455351cd426fb7dec8743ac312aafbe93d.zip
mac80211: simplify AP interface stop
For AP interfaces, there's no need to flush stations or keys again when the interface is stopped as already happened when the BSS was stopped on the interface. Signed-off-by: Johannes Berg <johannes.berg@intel.com>
-rw-r--r--net/mac80211/iface.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/net/mac80211/iface.c b/net/mac80211/iface.c
index 290de4d99697..d85282f64405 100644
--- a/net/mac80211/iface.c
+++ b/net/mac80211/iface.c
@@ -836,14 +836,16 @@ static void ieee80211_do_stop(struct ieee80211_sub_if_data *sdata,
rcu_barrier();
sta_info_flush_cleanup(sdata);
- skb_queue_purge(&sdata->skb_queue);
-
/*
* Free all remaining keys, there shouldn't be any,
* except maybe in WDS mode?
*/
ieee80211_free_keys(sdata);
+ /* fall through */
+ case NL80211_IFTYPE_AP:
+ skb_queue_purge(&sdata->skb_queue);
+
drv_remove_interface_debugfs(local, sdata);
if (going_down)