qcacld-3.0: Fix the crash in wlan re-initialization

Perform cfg download before the SME config update since the
SME config update operation accesses the cfg database.

Change-Id: Ic2d5b6d192ed164b20011b3eeaea6126951b87e8
CRs-Fixed: 948896
This commit is contained in:
Kiran Kumar Lokere
2015-12-09 19:01:06 -08:00
committed by Gerrit - the friendly Code Review server
parent fba8e0dc26
commit 5aeae9a956

View File

@@ -1463,18 +1463,21 @@ CDF_STATUS hdd_wlan_re_init(void *hif_sc)
goto err_cds_close; goto err_cds_close;
} }
/* Set the SME configuration parameters. */ cdf_status = cds_pre_enable(pHddCtx->pcds_context);
cdf_status = hdd_set_sme_config(pHddCtx); if (!CDF_IS_STATUS_SUCCESS(cdf_status)) {
if (CDF_STATUS_SUCCESS != cdf_status) { hdd_alert("cds_pre_enable failed");
hddLog(CDF_TRACE_LEVEL_FATAL, "%s: Failed hdd_set_sme_config",
__func__);
goto err_cds_close; goto err_cds_close;
} }
cdf_status = cds_pre_enable(pHddCtx->pcds_context); /*
if (!CDF_IS_STATUS_SUCCESS(cdf_status)) { * Note that the cds_pre_enable() sequence triggers the cfg download.
hddLog(CDF_TRACE_LEVEL_FATAL, "%s: cds_pre_enable failed", * The cfg download must occur before we update the SME config
__func__); * since the SME config operation must access the cfg database.
* Set the SME configuration parameters.
*/
cdf_status = hdd_set_sme_config(pHddCtx);
if (CDF_STATUS_SUCCESS != cdf_status) {
hdd_alert("Failed hdd_set_sme_config");
goto err_cds_close; goto err_cds_close;
} }