]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
wifi: mac80211: check ieee80211_bss_info_change_notify() against MLD
authorJohannes Berg <johannes.berg@intel.com>
Thu, 23 May 2024 10:11:40 +0000 (12:11 +0200)
committerJohannes Berg <johannes.berg@intel.com>
Wed, 29 May 2024 08:38:49 +0000 (10:38 +0200)
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>
net/mac80211/main.c

index 4eaea0a9975b474b0b6b314b3244a88d8e0f1d77..40fbf397ce740a64573a520b7a6185184ca8a1c6 100644 (file)
@@ -337,6 +337,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;
 
@@ -369,7 +371,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)