summaryrefslogtreecommitdiffstats
path: root/net/mac80211/pm.c
diff options
context:
space:
mode:
authorJohannes Berg <johannes.berg@intel.com>2013-03-27 22:49:19 +0100
committerJohannes Berg <johannes.berg@intel.com>2013-04-08 09:17:00 +0200
commitc8f994eec2a966a7a5fb6a3be517e3ede6a3cafa (patch)
treee2c04a5459150da9f57ad60849351642b6a4fa92 /net/mac80211/pm.c
parentafdc7c18e9f2a768865b6caa886e605719a6304e (diff)
downloadlinux-c8f994eec2a966a7a5fb6a3be517e3ede6a3cafa.tar.gz
linux-c8f994eec2a966a7a5fb6a3be517e3ede6a3cafa.tar.xz
mac80211: purge remain-on-channel items when suspending
They can't really be executed while suspended and could trigger work warnings, so abort all ROC items. When the system resumes the notifications about this will be delivered to userspace which can then act accordingly (though it will assume they were canceled/finished.) Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'net/mac80211/pm.c')
-rw-r--r--net/mac80211/pm.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/net/mac80211/pm.c b/net/mac80211/pm.c
index 3d16f4e61743..b98d927dd0f3 100644
--- a/net/mac80211/pm.c
+++ b/net/mac80211/pm.c
@@ -19,6 +19,8 @@ int __ieee80211_suspend(struct ieee80211_hw *hw, struct cfg80211_wowlan *wowlan)
ieee80211_dfs_cac_cancel(local);
+ ieee80211_roc_purge(local, NULL);
+
if (hw->flags & IEEE80211_HW_AMPDU_AGGREGATION) {
mutex_lock(&local->sta_mtx);
list_for_each_entry(sta, &local->sta_list, list) {