From 776f1de7295afe378a0b4acb4fbd0655e76a5f0b Mon Sep 17 00:00:00 2001 From: Ilan Peer Date: Sat, 8 Mar 2025 23:03:37 +0200 Subject: [PATCH] FROMGIT: 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 Signed-off-by: Miri Korenblit Link: https://patch.msgid.link/20250308225541.d694a9125aba.I79b010ea9aab47893e4f22c266362fde30b7f9ac@changeid Signed-off-by: Johannes Berg Bug: 404394488 (cherry picked from commit e16caea70610ed4226034dfcdaa5c43b36ff9e0a git://git.kernel.org/pub/scm/linux/kernel/git/wireless/wireless-next.git main) Change-Id: If6fbafad1748274e30e982fee520518bd87d585f Signed-off-by: Kavita Kavita --- include/net/cfg80211.h | 1 + net/wireless/mlme.c | 4 ++++ 2 files changed, 5 insertions(+) diff --git a/include/net/cfg80211.h b/include/net/cfg80211.h index e8a6a8bab992..af4bd06e408b 100644 --- a/include/net/cfg80211.h +++ b/include/net/cfg80211.h @@ -9736,6 +9736,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 93a68263ac2f..f27540f7cfd7 100644 --- a/net/wireless/mlme.c +++ b/net/wireless/mlme.c @@ -1354,6 +1354,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);