Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

wifi: mac80211: Remove deleted sta links in ieee80211_ml_reconf_work()

Delete stale station links announced in the reconfiguration IE
transmitted by the AP in the beacon frames.

Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>
Link: https://patch.msgid.link/20260309-mac80211-reconf-remove-sta-link-v2-1-1582aac720c6@kernel.org
Signed-off-by: Johannes Berg <johannes.berg@intel.com>

authored by

Lorenzo Bianconi and committed by
Johannes Berg
84674b03 8bca5225

+11
+11
net/mac80211/mlme.c
··· 7076 7076 container_of(work, struct ieee80211_sub_if_data, 7077 7077 u.mgd.ml_reconf_work.work); 7078 7078 u16 new_valid_links, new_active_links, new_dormant_links; 7079 + struct sta_info *sta; 7079 7080 int ret; 7080 7081 7081 7082 if (!sdata->u.mgd.removed_links) ··· 7110 7109 "Failed setting active links\n"); 7111 7110 goto out; 7112 7111 } 7112 + } 7113 + 7114 + sta = sta_info_get(sdata, sdata->vif.cfg.ap_addr); 7115 + if (sta) { 7116 + unsigned long removed_links = sdata->u.mgd.removed_links; 7117 + unsigned int link_id; 7118 + 7119 + for_each_set_bit(link_id, &removed_links, 7120 + IEEE80211_MLD_MAX_NUM_LINKS) 7121 + ieee80211_sta_free_link(sta, link_id); 7113 7122 } 7114 7123 7115 7124 new_dormant_links = sdata->vif.dormant_links & ~sdata->u.mgd.removed_links;