summaryrefslogtreecommitdiffstats
path: root/net
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 /net
parent7b4396bd6868f3d665c5f4cb53a9bdde5a2f4bf2 (diff)
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>
Diffstat (limited to 'net')
-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 290de4d9969..d85282f6440 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)