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
This commit is contained in:
nakul kachhwaha
2019-05-08 17:11:58 +05:30
committed by nshrivas
parent b7a6d1a405
commit 5913f35b27

View File

@@ -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));