diff options
| author | Krunal Soni <ksoni@qca.qualcomm.com> | 2016-02-10 16:45:08 -0800 |
|---|---|---|
| committer | Anjaneedevi Kapparapu <akappa@codeaurora.org> | 2016-03-15 11:26:22 +0530 |
| commit | 07cb652902758aa691d10ca0ca5f0879eeb9ad62 (patch) | |
| tree | 62027c31d927087de71d541b48154b6dcd06994a | |
| parent | e560e9bfc2ff091868fc29a845ba7c35cdb9464e (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.c | 39 |
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); } } } |
