qcacld-3.0: Reduce stack frame size while extracting pdev stats

Reduce stack frame size of target_if_cp_stats_extract_pdev_stats()
by allocating dynamic memory to wmi_host_pdev_stats.

Change-Id: I83a73f2973b54fbc28399c106ea52a0b6c1988f3
CRs-Fixed: 2868500
このコミットが含まれているのは:
Dundi Raviteja
2020-12-23 16:07:38 +05:30
committed by snandini
コミット 3b0a146c82

ファイルの表示

@@ -365,7 +365,7 @@ static QDF_STATUS target_if_cp_stats_extract_pdev_stats(
{
uint32_t i;
QDF_STATUS status;
wmi_host_pdev_stats pdev_stats;
wmi_host_pdev_stats *pdev_stats;
void *soc = cds_get_context(QDF_MODULE_ID_SOC);
cdp_config_param_type val;
@@ -382,20 +382,29 @@ static QDF_STATUS target_if_cp_stats_extract_pdev_stats(
if (!ev->pdev_stats)
return QDF_STATUS_E_NOMEM;
pdev_stats = qdf_mem_malloc(sizeof(*pdev_stats));
if (!pdev_stats) {
cp_stats_err("malloc failed for pdev_stats");
return QDF_STATUS_E_NOMEM;
}
for (i = 0; i < ev->num_pdev_stats; i++) {
status = wmi_extract_pdev_stats(wmi_hdl, data, i, &pdev_stats);
status = wmi_extract_pdev_stats(wmi_hdl, data, i, pdev_stats);
if (QDF_IS_STATUS_ERROR(status)) {
cp_stats_err("wmi_extract_pdev_stats failed");
qdf_mem_free(pdev_stats);
return status;
}
ev->pdev_stats[i].max_pwr = pdev_stats.chan_tx_pwr;
ev->pdev_stats[i].max_pwr = pdev_stats->chan_tx_pwr;
target_if_cp_stats_extract_congestion(&ev->pdev_stats[i],
&pdev_stats);
pdev_stats);
val.cdp_pdev_param_chn_noise_flr = pdev_stats.chan_nf;
val.cdp_pdev_param_chn_noise_flr = pdev_stats->chan_nf;
cdp_txrx_set_pdev_param(soc, 0, CDP_CHAN_NOISE_FLOOR, val);
}
qdf_mem_free(pdev_stats);
return QDF_STATUS_SUCCESS;
}