summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJohannes Berg <johannes.berg@intel.com>2012-12-14 14:17:26 +0100
committerJohannes Berg <johannes.berg@intel.com>2013-01-03 13:01:36 +0100
commit8da349329ae52462253052f804ef30d086c9911a (patch)
treeef385a3023ae0391a34c1c289c3b6bc6383e7cff
parentd6a83228823fc0cc8d79d95c9f0bf568b7317862 (diff)
downloadlinux-8da349329ae52462253052f804ef30d086c9911a.tar.gz
linux-8da349329ae52462253052f804ef30d086c9911a.tar.bz2
linux-8da349329ae52462253052f804ef30d086c9911a.zip
mac80211: reconfig bss_info_changed only if beaconing
For AP/IBSS/mesh interfaces, call the driver to reconfigure bss_info_changed only if the interface was beaconing before suspend, otherwise we call the driver and it might interpret the change as going from enabled to disabled. Signed-off-by: Johannes Berg <johannes.berg@intel.com>
-rw-r--r--net/mac80211/util.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/net/mac80211/util.c b/net/mac80211/util.c
index 2e2e13bf96b2..e27c89c27bf4 100644
--- a/net/mac80211/util.c
+++ b/net/mac80211/util.c
@@ -1555,9 +1555,11 @@ int ieee80211_reconfig(struct ieee80211_local *local)
/* fall through */
case NL80211_IFTYPE_MESH_POINT:
- changed |= BSS_CHANGED_BEACON |
- BSS_CHANGED_BEACON_ENABLED;
- ieee80211_bss_info_change_notify(sdata, changed);
+ if (sdata->vif.bss_conf.enable_beacon) {
+ changed |= BSS_CHANGED_BEACON |
+ BSS_CHANGED_BEACON_ENABLED;
+ ieee80211_bss_info_change_notify(sdata, changed);
+ }
break;
case NL80211_IFTYPE_WDS:
break;