From 9bf81570ab03c8abcf3dbefb7e16f843df592bbd Mon Sep 17 00:00:00 2001 From: Nirav Shah Date: Tue, 19 Apr 2016 16:42:52 +0530 Subject: 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 --- core/mac/src/pe/lim/lim_utils.c | 8 ++++++++ 1 file changed, 8 insertions(+) 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; -- cgit v1.2.3