summaryrefslogtreecommitdiffstats
path: root/net/wireless/sme.c
diff options
context:
space:
mode:
authorXin Deng <quic_deng@quicinc.com>2024-04-26 11:25:01 +0200
committerJohannes Berg <johannes.berg@intel.com>2024-05-03 10:03:19 +0200
commit9f6d4b8d149af8dc3f9a1e3000168b99ca576390 (patch)
tree11b89f35886891ce7655156be12c0357ed8d0726 /net/wireless/sme.c
parentwifi: iwlwifi: pcie: allocate dummy net_device dynamically (diff)
downloadlinux-9f6d4b8d149af8dc3f9a1e3000168b99ca576390.tar.xz
linux-9f6d4b8d149af8dc3f9a1e3000168b99ca576390.zip
wifi: cfg80211: Clear mlo_links info when STA disconnects
wdev->valid_links is not cleared when upper layer disconnect from a wdev->AP MLD. It has been observed that this would prevent offchannel operations like remain-on-channel which would be needed for user space operations with Public Action frame. Clear the wdev->valid_links when STA disconnects. Signed-off-by: Xin Deng <quic_deng@quicinc.com> Link: https://msgid.link/20240426092501.8592-1-quic_deng@quicinc.com Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'net/wireless/sme.c')
-rw-r--r--net/wireless/sme.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/net/wireless/sme.c b/net/wireless/sme.c
index 82e3ce42206c..a8ad55f11133 100644
--- a/net/wireless/sme.c
+++ b/net/wireless/sme.c
@@ -1353,6 +1353,7 @@ void __cfg80211_disconnected(struct net_device *dev, const u8 *ie,
return;
cfg80211_wdev_release_bsses(wdev);
+ wdev->valid_links = 0;
wdev->connected = false;
wdev->u.client.ssid_len = 0;
wdev->conn_owner_nlportid = 0;