summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDustin Brown <dustinb@codeaurora.org>2018-01-09 10:24:24 -0800
committersnandini <snandini@codeaurora.org>2018-01-09 16:34:59 -0800
commitd21a86b52e423b8db490464cd119278bbac4783e (patch)
tree009b9ed3c0d8599bb324b5f751e581c1e99f7c88
parent500900a3c8b9d0e2e2e23d8d3fae95c34488c0eb (diff)
qcacld-3.0: Abort SAP restart when unloading
As part of driver remove, the station-softAP concurrency work is flushed, and then all adapters are stopped. This leads to a race window where new work can be scheduled after the flush, but before the adapters are stopped. Reject requests to schedule this work during driver unload to prevent the race condition. Change-Id: Icae93c4e6dca364e930568fac2964c376dd4fbc6 CRs-Fixed: 2169387
-rw-r--r--core/cds/src/cds_concurrency.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/core/cds/src/cds_concurrency.c b/core/cds/src/cds_concurrency.c
index 63206ac49f3b..ec545631866d 100644
--- a/core/cds/src/cds_concurrency.c
+++ b/core/cds/src/cds_concurrency.c
@@ -7968,6 +7968,10 @@ void cds_check_concurrent_intf_and_restart_sap(hdd_adapter_t *adapter)
return;
}
+ /* don't restart sap if driver is loading/unloading/recovering */
+ if (wlan_hdd_validate_context(hdd_ctx))
+ return;
+
if (cds_get_connection_count() == 1) {
/*
* If STA+SAP sessions are on DFS channel and STA+SAP SCC is