mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-13 16:16:15 -04:00
qcacld-3.0: Allocate memory for cds config only once
During the driver load cds_cfg memory is allocated during the hdd_Wlan_startup and cds_open. Since the memory allocated by the cds_open overwrites the pointer of memory allocated by hdd_wlan_statup during memory free only memory allocated by cds_open is freed resulting in memory leakage. To migitate this issue, allocate the memory for the cds config only once. Change-Id: I01bf0e8110a2519a2e11da398be3c98f9ca4db8f CRs-Fixed: 1055648
This commit is contained in:
parent
8e0216378a
commit
f6246630ce
2 changed files with 7 additions and 6 deletions
|
|
@ -268,7 +268,6 @@ QDF_STATUS cds_open(void)
|
|||
goto err_sched_close;
|
||||
}
|
||||
|
||||
hdd_update_config(pHddCtx);
|
||||
cds_cfg = cds_get_ini_config();
|
||||
if (!cds_cfg) {
|
||||
cds_err("Cds config is NULL");
|
||||
|
|
@ -2191,7 +2190,7 @@ void cds_deinit_ini_config(void)
|
|||
return;
|
||||
}
|
||||
|
||||
if (!cds_ctx->cds_cfg)
|
||||
if (cds_ctx->cds_cfg)
|
||||
qdf_mem_free(cds_ctx->cds_cfg);
|
||||
|
||||
cds_ctx->cds_cfg = NULL;
|
||||
|
|
|
|||
|
|
@ -1731,6 +1731,12 @@ int hdd_wlan_start_modules(hdd_context_t *hdd_ctx, hdd_adapter_t *adapter,
|
|||
goto hif_close;
|
||||
}
|
||||
|
||||
ret = hdd_update_config(hdd_ctx);
|
||||
if (ret) {
|
||||
hdd_err("Failed to update configuration :%d", ret);
|
||||
goto ol_cds_free;
|
||||
}
|
||||
|
||||
status = cds_open();
|
||||
if (!QDF_IS_STATUS_SUCCESS(status)) {
|
||||
hdd_err("Failed to Open CDS: %d", status);
|
||||
|
|
@ -7384,10 +7390,6 @@ int hdd_wlan_startup(struct device *dev)
|
|||
|
||||
hdd_wlan_green_ap_init(hdd_ctx);
|
||||
|
||||
ret = hdd_update_config(hdd_ctx);
|
||||
if (ret)
|
||||
goto err_exit_nl_srv;
|
||||
|
||||
ret = hdd_wlan_start_modules(hdd_ctx, adapter, false);
|
||||
if (ret) {
|
||||
hdd_alert("Failed to start modules: %d", ret);
|
||||
|
|
|
|||
Loading…
Reference in a new issue