summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNirav Shah <nnshah@codeaurora.org>2016-04-19 16:42:52 +0530
committerGerrit - the friendly Code Review server <code-review@localhost>2016-05-18 16:34:00 -0700
commit9bf81570ab03c8abcf3dbefb7e16f843df592bbd (patch)
tree96b22733c31468daed7ac0892ac7e108c9be9cdd
parented34b2122642a0a24a1ef41e8771ba0fc828d983 (diff)
qcacld-3.0: Free body of message in deferred queue during unload
Free body pointer of messages pending in deferred queue during driver unload to avoid memory leak. Change-Id: I73e0e3f675728aa653c2c4f5d2291c260b339987 CRs-Fixed: 1003001
-rw-r--r--core/mac/src/pe/lim/lim_utils.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/core/mac/src/pe/lim/lim_utils.c b/core/mac/src/pe/lim/lim_utils.c
index 3dbf1ff563e0..350bffc604d4 100644
--- a/core/mac/src/pe/lim/lim_utils.c
+++ b/core/mac/src/pe/lim/lim_utils.c
@@ -832,6 +832,14 @@ void lim_print_mac_addr(tpAniSirGlobal pMac, tSirMacAddr macAddr, uint8_t logLev
void lim_reset_deferred_msg_q(tpAniSirGlobal pMac)
{
+ tSirMsgQ *read_msg;
+
+ if (pMac->lim.gLimDeferredMsgQ.size > 0) {
+ while ((read_msg = lim_read_deferred_msg_q(pMac)) != NULL) {
+ pe_free_msg(pMac, read_msg);
+ }
+ }
+
pMac->lim.gLimDeferredMsgQ.size =
pMac->lim.gLimDeferredMsgQ.write =
pMac->lim.gLimDeferredMsgQ.read = 0;