The return value of ieee80211_mesh_csa_beacon is not aligned with the return value of ieee80211_csa_beacon() and ieee80211_ibss_csa_beacon(). For consistency and to be able to use both functions with similar code, change ieee80211_mesh_csa_beacon() not to send the bss changed notification itself, but return what has changed so the caller can send the notification instead. Signed-off-by: Luciano Coelho <luciano.coelho@xxxxxxxxx> --- This depends on Chun-Yeow's "mac80211: fix the mesh channel switch support", which Johannes already applied but is not in wireless-testing yet. net/mac80211/cfg.c | 2 ++ net/mac80211/mesh.c | 4 +--- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/net/mac80211/cfg.c b/net/mac80211/cfg.c index e242862..fc5a1f9 100644 --- a/net/mac80211/cfg.c +++ b/net/mac80211/cfg.c @@ -3135,6 +3135,8 @@ int ieee80211_channel_switch(struct wiphy *wiphy, struct net_device *dev, ifmsh->csa_repeater = false; return err; } + changed |= err; + break; #endif default: diff --git a/net/mac80211/mesh.c b/net/mac80211/mesh.c index a2344fc..6d6c56b 100644 --- a/net/mac80211/mesh.c +++ b/net/mac80211/mesh.c @@ -1094,12 +1094,10 @@ int ieee80211_mesh_csa_beacon(struct ieee80211_sub_if_data *sdata, return ret; } - ieee80211_bss_info_change_notify(sdata, BSS_CHANGED_BEACON); - if (csa_action) ieee80211_send_action_csa(sdata, csa_settings); - return 0; + return BSS_CHANGED_BEACON; } static int mesh_fwd_csa_frame(struct ieee80211_sub_if_data *sdata, -- 1.8.4.rc3 -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html