From 85b455ee99d36ec4d74242230b5dc4b8a99d7c92 Mon Sep 17 00:00:00 2001 From: Vignesh Viswanathan Date: Wed, 17 Jan 2018 19:54:33 +0530 Subject: [PATCH] qcacld-3.0: Free IE buffers in SAP config in case of SSR SAP Restart When a SSR SAP restart happens, hdd_ssr_restart_sap invokes wlan_hdd_start_sap. In this function, IE buffers for sap_config is allocated as part of wlan_hdd_cfg80211_update_apies and then copied to csr_profile in wlansap_start_bss and then SAP FSM Starts the SAP. The memory allocated for IE buffers in sap_config needs to be freed in both SAP Start Success and failure cases without which, in case of multiple SSRs, each time new malloc is done and will lead to memory leak. Free the IE buffers in sap_config in wlan_hdd_start_sap in both SAP Start success and failure cases. Change-Id: I43035c786444d0dfbcfaba9038a09cf345263b10 CRs-Fixed: 2168107 --- core/hdd/src/wlan_hdd_main.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/core/hdd/src/wlan_hdd_main.c b/core/hdd/src/wlan_hdd_main.c index e6bf1cdb87a7..a526778e8885 100644 --- a/core/hdd/src/wlan_hdd_main.c +++ b/core/hdd/src/wlan_hdd_main.c @@ -11361,7 +11361,6 @@ void wlan_hdd_start_sap(struct hdd_adapter *ap_adapter, bool reinit) if (0 != wlan_hdd_cfg80211_update_apies(ap_adapter)) { hdd_err("SAP Not able to set AP IEs"); - wlansap_reset_sap_config_add_ie(sap_config, eUPDATE_IE_ALL); goto end; } @@ -11380,6 +11379,7 @@ void wlan_hdd_start_sap(struct hdd_adapter *ap_adapter, bool reinit) goto end; } hdd_info("SAP Start Success"); + wlansap_reset_sap_config_add_ie(sap_config, eUPDATE_IE_ALL); set_bit(SOFTAP_BSS_STARTED, &ap_adapter->event_flags); if (hostapd_state->bss_state == BSS_START) policy_mgr_incr_active_session(hdd_ctx->hdd_psoc, @@ -11389,6 +11389,7 @@ void wlan_hdd_start_sap(struct hdd_adapter *ap_adapter, bool reinit) return; end: + wlansap_reset_sap_config_add_ie(sap_config, eUPDATE_IE_ALL); mutex_unlock(&hdd_ctx->sap_lock); /* SAP context and beacon cleanup will happen during driver unload * in hdd_stop_adapter