wifi: mac80211: check ieee80211_bss_info_change_notify() against MLD

BugLink: https://bugs.launchpad.net/bugs/2084941

[ Upstream commit a0ca76e5b7d550fcd74753d5fdaaf23f1a9bfdb4 ]

It's not valid to call ieee80211_bss_info_change_notify() with
an sdata that's an MLD, remove the FIXME comment (it's not true)
and add a warning.

Reviewed-by: Miriam Rachel Korenblit <miriam.rachel.korenblit@intel.com>
Link: https://msgid.link/20240523121140.97a589b13d24.I61988788d81fb3cf97a490dfd3167f67a141d1fd@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Signed-off-by: Manuel Diewald <manuel.diewald@canonical.com>
Signed-off-by: Stefan Bader <stefan.bader@canonical.com>
This commit is contained in:
Johannes Berg
2024-05-23 12:11:40 +02:00
committed by Mehmet Basaran
parent 0cbbebbee0
commit 28a165d7d9
+2 -1
View File
@@ -217,6 +217,8 @@ void ieee80211_bss_info_change_notify(struct ieee80211_sub_if_data *sdata,
might_sleep();
WARN_ON_ONCE(ieee80211_vif_is_mld(&sdata->vif));
if (!changed || sdata->vif.type == NL80211_IFTYPE_AP_VLAN)
return;
@@ -249,7 +251,6 @@ void ieee80211_bss_info_change_notify(struct ieee80211_sub_if_data *sdata,
if (changed & ~BSS_CHANGED_VIF_CFG_FLAGS) {
u64 ch = changed & ~BSS_CHANGED_VIF_CFG_FLAGS;
/* FIXME: should be for each link */
trace_drv_link_info_changed(local, sdata, &sdata->vif.bss_conf,
changed);
if (local->ops->link_info_changed)