diff options
| -rw-r--r-- | core/cds/src/cds_sched.c | 1 | ||||
| -rw-r--r-- | core/hdd/src/wlan_hdd_main.c | 10 |
2 files changed, 7 insertions, 4 deletions
diff --git a/core/cds/src/cds_sched.c b/core/cds/src/cds_sched.c index efc32766242b..0fdab613f6fd 100644 --- a/core/cds/src/cds_sched.c +++ b/core/cds/src/cds_sched.c @@ -591,6 +591,7 @@ pkt_freeqalloc_failure: #endif /* De-initialize all the message queues */ cds_sched_deinit_mqs(pSchedContext); + gp_cds_sched_context = NULL; return QDF_STATUS_E_RESOURCES; diff --git a/core/hdd/src/wlan_hdd_main.c b/core/hdd/src/wlan_hdd_main.c index dadc7a7bd7b3..5fe40468a5be 100644 --- a/core/hdd/src/wlan_hdd_main.c +++ b/core/hdd/src/wlan_hdd_main.c @@ -8757,10 +8757,12 @@ err_stop_modules: hdd_wlan_stop_modules(hdd_ctx); err_exit_nl_srv: - status = cds_sched_close(hdd_ctx->pcds_context); - if (!QDF_IS_STATUS_SUCCESS(status)) { - hdd_err("Failed to close CDS Scheduler"); - QDF_ASSERT(QDF_IS_STATUS_SUCCESS(status)); + if (DRIVER_MODULES_CLOSED == hdd_ctx->driver_status) { + status = cds_sched_close(hdd_ctx->pcds_context); + if (!QDF_IS_STATUS_SUCCESS(status)) { + hdd_err("Failed to close CDS Scheduler"); + QDF_ASSERT(QDF_IS_STATUS_SUCCESS(status)); + } } hdd_green_ap_deinit(hdd_ctx); |
