summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHsiu-Chang Chen <hsiuchangchen@google.com>2021-11-01 15:44:32 +0530
committerHsiu-Chang Chen <hsiuchangchen@google.com>2022-05-16 10:51:35 +0800
commita34ea875bcb05a3cb2a0a517edd4d3d162f04860 (patch)
treef0274b90a51973d9604fd3837badb4cd92f5eacb
parent117f3d8c4f6b0b645839b9e9b913563c7fd2b730 (diff)
downloadqcacld-a34ea875bcb05a3cb2a0a517edd4d3d162f04860.tar.gz
qcacld-3.0: unblock the state control param thread at end of SSR
Currently the state control param thread is unblocked 1st and then the psoc transition is completed, there could be a chance that SSR thread got scheduled out and wifi thread tried to comeup and issue interface up which could fail because psoc transition is till in progress. So, unblock the wifi thread waiting on state control param after stopping the psoc transition at the end of SSR. Bug: 227415695 Test: Regression Test Signed-off-by: Hsiu-Chang Chen <hsiuchangchen@google.com> Change-Id: I4631fb9aae6a5416ba70b24fe3c053528bd3b7d9 CRs-Fixed: 3066968
-rw-r--r--core/hdd/src/wlan_hdd_driver_ops.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/core/hdd/src/wlan_hdd_driver_ops.c b/core/hdd/src/wlan_hdd_driver_ops.c
index 40a82a3bd9..b31e27c1d7 100644
--- a/core/hdd/src/wlan_hdd_driver_ops.c
+++ b/core/hdd/src/wlan_hdd_driver_ops.c
@@ -1,5 +1,6 @@
/*
* Copyright (c) 2015-2020 The Linux Foundation. All rights reserved.
+ * Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved
*
* Permission to use, copy, modify, and/or distribute this software for
* any purpose with or without fee is hereby granted, provided that the
@@ -605,7 +606,6 @@ static int __hdd_soc_recovery_reinit(struct device *dev,
cds_set_recovery_in_progress(false);
hdd_soc_load_unlock(dev);
- hdd_start_complete(0);
return 0;
@@ -657,6 +657,7 @@ static int hdd_soc_recovery_reinit(struct device *dev,
return errno;
osif_psoc_sync_trans_stop(psoc_sync);
+ hdd_start_complete(0);
return 0;
}