From 47a4a05cfa9a2bbdaa0f0bf3fe9f149cf9e9c07e Mon Sep 17 00:00:00 2001 From: Houston Hoffman Date: Mon, 14 Nov 2016 23:22:44 -0800 Subject: [PATCH] qcacld-3.0: Fix memory leaks when cds_open fails When cds_open fails, several cleanup actions are missed. cds_shutdown_notifier_purge hdd_green_ap_deinit wlan_hdd_deinit_tx_rx_histogram Change-Id: I9812b26636b1fd82320de323538777ac048ea824 CRs-Fixed: 1089946 --- core/cds/src/cds_api.c | 1 + core/hdd/src/wlan_hdd_main.c | 2 ++ 2 files changed, 3 insertions(+) diff --git a/core/cds/src/cds_api.c b/core/cds/src/cds_api.c index 1eaf73bd3ab4..6cdcbf65cb9f 100644 --- a/core/cds/src/cds_api.c +++ b/core/cds/src/cds_api.c @@ -414,6 +414,7 @@ err_bmi_close: err_sched_close: cds_sched_close(gp_cds_context); + cds_shutdown_notifier_purge(); err_msg_queue: cds_mq_deinit(&gp_cds_context->freeVosMq); diff --git a/core/hdd/src/wlan_hdd_main.c b/core/hdd/src/wlan_hdd_main.c index 5ba5817050b0..ce0e257fa24e 100644 --- a/core/hdd/src/wlan_hdd_main.c +++ b/core/hdd/src/wlan_hdd_main.c @@ -8173,10 +8173,12 @@ err_stop_modules: } err_exit_nl_srv: + hdd_green_ap_deinit(hdd_ctx); hdd_exit_netlink_services(hdd_ctx); cds_deinit_ini_config(); err_hdd_free_context: + wlan_hdd_deinit_tx_rx_histogram(hdd_ctx); qdf_mc_timer_destroy(&hdd_ctx->iface_change_timer); mutex_destroy(&hdd_ctx->iface_change_lock); hdd_context_destroy(hdd_ctx);