wifi: cfg80211: Clear mlo_links info when STA disconnects
authorXin Deng <quic_deng@quicinc.com>
Fri, 26 Apr 2024 09:25:01 +0000 (02:25 -0700)
committerJohannes Berg <johannes.berg@intel.com>
Fri, 3 May 2024 08:03:19 +0000 (10:03 +0200)
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>
net/wireless/sme.c

index 82e3ce42206ccfa8dd430a84596a0a3c9a0da628..a8ad55f11133b3d7a62fa2151d9787e723b5d025 100644 (file)
@@ -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;