From 1c29b9bced86703496a372add609554fe3e269fd Mon Sep 17 00:00:00 2001 From: gluker Date: Sun, 2 Apr 2023 04:39:03 +0300 Subject: [PATCH] Fix kernel warning dump at net/wireless/sme.c:843 --- os_dep/linux/ioctl_cfg80211.c | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/os_dep/linux/ioctl_cfg80211.c b/os_dep/linux/ioctl_cfg80211.c index 7b06b6f..cd4b0f9 100644 --- a/os_dep/linux/ioctl_cfg80211.c +++ b/os_dep/linux/ioctl_cfg80211.c @@ -1106,6 +1106,7 @@ check_bss: #if (LINUX_VERSION_CODE >= KERNEL_VERSION(4, 12, 0) || defined(RHEL79)) #if (LINUX_VERSION_CODE >= KERNEL_VERSION(6, 0, 0)) + roam_info.links[0].channel = notify_channel; roam_info.links[0].bssid = cur_network->network.MacAddress; #else roam_info.bssid = cur_network->network.MacAddress; @@ -1140,13 +1141,17 @@ check_bss: RTW_INFO("pwdev->sme_state(b)=%d\n", pwdev->sme_state); #endif - if (check_fwstate(pmlmepriv, WIFI_MONITOR_STATE) != _TRUE) - rtw_cfg80211_connect_result(pwdev, cur_network->network.MacAddress - , pmlmepriv->assoc_req + sizeof(struct rtw_ieee80211_hdr_3addr) + 2 - , pmlmepriv->assoc_req_len - sizeof(struct rtw_ieee80211_hdr_3addr) - 2 - , pmlmepriv->assoc_rsp + sizeof(struct rtw_ieee80211_hdr_3addr) + 6 - , pmlmepriv->assoc_rsp_len - sizeof(struct rtw_ieee80211_hdr_3addr) - 6 - , WLAN_STATUS_SUCCESS, GFP_ATOMIC); + if (check_fwstate(pmlmepriv, WIFI_MONITOR_STATE) != _TRUE) { + roam_info.links[0].bss = cfg80211_get_bss(pwdev->wiphy, roam_info.links[0].channel, + roam_info.links[0].bssid, pwdev->u.client.ssid, pwdev->u.client.ssid_len, + pwdev->conn_bss_type, IEEE80211_PRIVACY_ANY); + cfg80211_connect_bss(wdev_to_ndev(pwdev), cur_network->network.MacAddress, roam_info.links[0].bss + , pmlmepriv->assoc_req + sizeof(struct rtw_ieee80211_hdr_3addr) + 2 + , pmlmepriv->assoc_req_len - sizeof(struct rtw_ieee80211_hdr_3addr) - 2 + , pmlmepriv->assoc_rsp + sizeof(struct rtw_ieee80211_hdr_3addr) + 6 + , pmlmepriv->assoc_rsp_len - sizeof(struct rtw_ieee80211_hdr_3addr) - 6 + , WLAN_STATUS_SUCCESS, GFP_ATOMIC, NL80211_TIMEOUT_UNSPECIFIED); + } #if defined(RHEL79) && (LINUX_VERSION_CODE < KERNEL_VERSION(3, 11, 0) || defined(COMPAT_KERNEL_RELEASE)) RTW_INFO("pwdev->sme_state(a)=%d\n", pwdev->sme_state); #endif