summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKrunal Soni <ksoni@qca.qualcomm.com>2016-02-10 16:45:08 -0800
committerAnjaneedevi Kapparapu <akappa@codeaurora.org>2016-03-15 11:26:22 +0530
commit07cb652902758aa691d10ca0ca5f0879eeb9ad62 (patch)
tree62027c31d927087de71d541b48154b6dcd06994a
parente560e9bfc2ff091868fc29a845ba7c35cdb9464e (diff)
qcacld-2.0: Fix the memory leak caused by pmfSaQueryTimer
this patch will fix the memory leak caused by pmfSaQueryTimer which was encountered during stress and stability tests. Change-Id: I5a2367302e0eac3a024626795a4469d1ced76e8c CRs-Fixed: 970527
-rw-r--r--CORE/MAC/src/pe/lim/limUtils.c39
1 files changed, 17 insertions, 22 deletions
diff --git a/CORE/MAC/src/pe/lim/limUtils.c b/CORE/MAC/src/pe/lim/limUtils.c
index e0b4207697c2..5dd05c5534ec 100644
--- a/CORE/MAC/src/pe/lim/limUtils.c
+++ b/CORE/MAC/src/pe/lim/limUtils.c
@@ -766,30 +766,25 @@ limCleanupMlm(tpAniSirGlobal pMac)
* each STA associated per BSSId and deactivate/delete
* the pmfSaQueryTimer for it
*/
- if (vos_is_logp_in_progress(VOS_MODULE_ID_PE, NULL))
+ for (bss_entry = 0; bss_entry < pMac->lim.maxBssId; bss_entry++)
{
- VOS_TRACE(VOS_MODULE_ID_PE, VOS_TRACE_LEVEL_ERROR,
- FL("SSR is detected, proceed to clean up pmfSaQueryTimer"));
- for (bss_entry = 0; bss_entry < pMac->lim.maxBssId; bss_entry++)
- {
- if (pMac->lim.gpSession[bss_entry].valid)
+ if (pMac->lim.gpSession[bss_entry].valid)
+ {
+ for (sta_entry = 1; sta_entry < pMac->lim.gLimAssocStaLimit;
+ sta_entry++)
{
- for (sta_entry = 1; sta_entry < pMac->lim.gLimAssocStaLimit;
- sta_entry++)
- {
- psessionEntry = &pMac->lim.gpSession[bss_entry];
- pStaDs = dphGetHashEntry(pMac, sta_entry,
- &psessionEntry->dph.dphHashTable);
- if (NULL == pStaDs)
- {
- continue;
- }
- VOS_TRACE(VOS_MODULE_ID_PE, VOS_TRACE_LEVEL_ERROR,
- FL("Deleting pmfSaQueryTimer for staid[%d]"),
- pStaDs->staIndex) ;
- tx_timer_deactivate(&pStaDs->pmfSaQueryTimer);
- tx_timer_delete(&pStaDs->pmfSaQueryTimer);
- }
+ psessionEntry = &pMac->lim.gpSession[bss_entry];
+ pStaDs = dphGetHashEntry(pMac, sta_entry,
+ &psessionEntry->dph.dphHashTable);
+ if (NULL == pStaDs)
+ {
+ continue;
+ }
+ VOS_TRACE(VOS_MODULE_ID_PE, VOS_TRACE_LEVEL_ERROR,
+ FL("Deleting pmfSaQueryTimer for staid[%d]"),
+ pStaDs->staIndex) ;
+ tx_timer_deactivate(&pStaDs->pmfSaQueryTimer);
+ tx_timer_delete(&pStaDs->pmfSaQueryTimer);
}
}
}