Commit aaba3cd3 authored by Benjamin Berg's avatar Benjamin Berg Committed by Johannes Berg
Browse files

wifi: mac80211: Create resources for disabled links



When associating to an MLD AP, links may be disabled. Create all
resources associated with a disabled link so that we can later enable it
without having to create these resources on the fly.

Fixes: 6d543b34 ("wifi: mac80211: Support disabled links during association")
Signed-off-by: default avatarBenjamin Berg <benjamin.berg@intel.com>
Link: https://lore.kernel.org/r/20230925173028.f9afdb26f6c7.I4e6e199aaefc1bf017362d64f3869645fa6830b5@changeid


Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
parent 334bf33e
Loading
Loading
Loading
Loading
+4 −3
Original line number Diff line number Diff line
@@ -5130,9 +5130,10 @@ static bool ieee80211_assoc_success(struct ieee80211_sub_if_data *sdata,
				continue;

			valid_links |= BIT(link_id);
			if (assoc_data->link[link_id].disabled) {
			if (assoc_data->link[link_id].disabled)
				dormant_links |= BIT(link_id);
			} else if (link_id != assoc_data->assoc_link_id) {

			if (link_id != assoc_data->assoc_link_id) {
				err = ieee80211_sta_allocate_link(sta, link_id);
				if (err)
					goto out_err;
@@ -5147,7 +5148,7 @@ static bool ieee80211_assoc_success(struct ieee80211_sub_if_data *sdata,
		struct ieee80211_link_data *link;
		struct link_sta_info *link_sta;

		if (!cbss || assoc_data->link[link_id].disabled)
		if (!cbss)
			continue;

		link = sdata_dereference(sdata->link[link_id], sdata);