diff options
Diffstat (limited to 'net/mac80211/chan.c')
-rw-r--r-- | net/mac80211/chan.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/net/mac80211/chan.c b/net/mac80211/chan.c index 2e6faeda22ad..d91ccfcaa6d1 100644 --- a/net/mac80211/chan.c +++ b/net/mac80211/chan.c | |||
@@ -137,7 +137,10 @@ static int ieee80211_assign_vif_chanctx(struct ieee80211_sub_if_data *sdata, | |||
137 | 137 | ||
138 | ieee80211_recalc_txpower(sdata); | 138 | ieee80211_recalc_txpower(sdata); |
139 | sdata->vif.bss_conf.idle = false; | 139 | sdata->vif.bss_conf.idle = false; |
140 | ieee80211_bss_info_change_notify(sdata, BSS_CHANGED_IDLE); | 140 | |
141 | if (sdata->vif.type != NL80211_IFTYPE_P2P_DEVICE && | ||
142 | sdata->vif.type != NL80211_IFTYPE_MONITOR) | ||
143 | ieee80211_bss_info_change_notify(sdata, BSS_CHANGED_IDLE); | ||
141 | 144 | ||
142 | return 0; | 145 | return 0; |
143 | } | 146 | } |
@@ -186,7 +189,10 @@ static void ieee80211_unassign_vif_chanctx(struct ieee80211_sub_if_data *sdata, | |||
186 | rcu_assign_pointer(sdata->vif.chanctx_conf, NULL); | 189 | rcu_assign_pointer(sdata->vif.chanctx_conf, NULL); |
187 | 190 | ||
188 | sdata->vif.bss_conf.idle = true; | 191 | sdata->vif.bss_conf.idle = true; |
189 | ieee80211_bss_info_change_notify(sdata, BSS_CHANGED_IDLE); | 192 | |
193 | if (sdata->vif.type != NL80211_IFTYPE_P2P_DEVICE && | ||
194 | sdata->vif.type != NL80211_IFTYPE_MONITOR) | ||
195 | ieee80211_bss_info_change_notify(sdata, BSS_CHANGED_IDLE); | ||
190 | 196 | ||
191 | drv_unassign_vif_chanctx(local, sdata, ctx); | 197 | drv_unassign_vif_chanctx(local, sdata, ctx); |
192 | 198 | ||