From 5913f35b2757507610cbe53efe0ef93247b2a897 Mon Sep 17 00:00:00 2001 From: nakul kachhwaha Date: Wed, 8 May 2019 17:11:58 +0530 Subject: [PATCH] qcacld-3.0: Check neighbor roam state before issuing disconnect wlan_hdd_try_disconnect should wait for LFR 2.0 based roaming sequence to complete before triggering disconnect to avoid potential race conditions. Change-Id: Ib5ee542350fb8c375bb3629f5437bc37cc79dbb7 CRs-Fixed: 2434842 --- core/hdd/src/wlan_hdd_cfg80211.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/core/hdd/src/wlan_hdd_cfg80211.c b/core/hdd/src/wlan_hdd_cfg80211.c index b5b9dbed9c..84c93d0bc7 100644 --- a/core/hdd/src/wlan_hdd_cfg80211.c +++ b/core/hdd/src/wlan_hdd_cfg80211.c @@ -18160,7 +18160,9 @@ int wlan_hdd_try_disconnect(struct hdd_adapter *adapter) * */ INIT_COMPLETION(adapter->roaming_comp_var); - if (hdd_is_roaming_in_progress(hdd_ctx)) { + if (hdd_is_roaming_in_progress(hdd_ctx) || + sme_neighbor_middle_of_roaming(mac_handle, + adapter->vdev_id)) { rc = wait_for_completion_timeout( &adapter->roaming_comp_var, msecs_to_jiffies(WLAN_WAIT_TIME_STOP_ROAM));