@@ -3155,6 +3155,8 @@ int ieee80211_channel_switch(struct wiphy *wiphy, struct net_device *dev,
ifmsh->csa_role = IEEE80211_MESH_CSA_ROLE_NONE;
return err;
}
+ changed |= err;
+
break;
#endif
default:
@@ -1091,12 +1091,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,
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. Change-Id: If4c111fd874a3e17a5df98d306f7f1c8fcaa6a1a Signed-off-by: Luciano Coelho <luciano.coelho@intel.com> --- net/mac80211/cfg.c | 2 ++ net/mac80211/mesh.c | 4 +--- 2 files changed, 3 insertions(+), 3 deletions(-)