diff options
author | 2025-03-08 23:03:37 +0200 | |
---|---|---|
committer | 2025-03-11 10:53:10 +0100 | |
commit | e16caea70610ed4226034dfcdaa5c43b36ff9e0a (patch) | |
tree | a192fc340fe677df982cca3ca92c916c37405e70 | |
parent | wifi: mac80211: fix warning on disconnect during failed ML reconf (diff) | |
download | linux-rng-e16caea70610ed4226034dfcdaa5c43b36ff9e0a.tar.xz linux-rng-e16caea70610ed4226034dfcdaa5c43b36ff9e0a.zip |
wifi: cfg80211: Update the link address when a link is added
When links are added, update the wireless device link addresses based
on the information provided by the driver.
Signed-off-by: Ilan Peer <ilan.peer@intel.com>
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
Link: https://patch.msgid.link/20250308225541.d694a9125aba.I79b010ea9aab47893e4f22c266362fde30b7f9ac@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
-rw-r--r-- | include/net/cfg80211.h | 1 | ||||
-rw-r--r-- | net/wireless/mlme.c | 4 |
2 files changed, 5 insertions, 0 deletions
diff --git a/include/net/cfg80211.h b/include/net/cfg80211.h index c61894c1265a..73f0e75cc814 100644 --- a/include/net/cfg80211.h +++ b/include/net/cfg80211.h @@ -9770,6 +9770,7 @@ struct cfg80211_mlo_reconf_done_data { u16 added_links; struct { struct cfg80211_bss *bss; + u8 *addr; } links[IEEE80211_MLD_MAX_NUM_LINKS]; }; diff --git a/net/wireless/mlme.c b/net/wireless/mlme.c index 956d33b219df..05d44a443518 100644 --- a/net/wireless/mlme.c +++ b/net/wireless/mlme.c @@ -1360,6 +1360,10 @@ void cfg80211_mlo_reconf_add_done(struct net_device *dev, if (data->added_links & BIT(link_id)) { wdev->links[link_id].client.current_bss = bss_from_pub(bss); + + memcpy(wdev->links[link_id].addr, + data->links[link_id].addr, + ETH_ALEN); } else { cfg80211_unhold_bss(bss_from_pub(bss)); cfg80211_put_bss(wiphy, bss); |