qcacmn: Add fix for memory leak
Added fix for two leak, a) During wifi unload, buffer used in init need to be free during deinit. b) Before buffer free, unmap is required for the buffer mapped to DMA. Change-Id: I4e5a63b0c2aabb69367365e74961a63194144057 CRs-Fixed: 3157424
This commit is contained in:
@@ -431,6 +431,7 @@ void dp_rx_desc_nbuf_free(struct dp_soc *soc,
|
||||
|
||||
qdf_spin_lock_bh(&rx_desc_pool->lock);
|
||||
for (i = 0; i < rx_desc_pool->pool_size; i++) {
|
||||
dp_rx_desc_free_dbg_info(&rx_desc_pool->array[i].rx_desc);
|
||||
if (rx_desc_pool->array[i].rx_desc.in_use) {
|
||||
nbuf = rx_desc_pool->array[i].rx_desc.nbuf;
|
||||
|
||||
@@ -468,6 +469,7 @@ void dp_rx_desc_frag_free(struct dp_soc *soc,
|
||||
paddr = rx_desc_pool->array[i].rx_desc.paddr_buf_start;
|
||||
vaddr = rx_desc_pool->array[i].rx_desc.rx_buf_start;
|
||||
|
||||
dp_rx_desc_free_dbg_info(&rx_desc_pool->array[i].rx_desc);
|
||||
if (!(rx_desc_pool->array[i].rx_desc.unmapped)) {
|
||||
qdf_mem_unmap_page(soc->osdev, paddr,
|
||||
rx_desc_pool->buf_size,
|
||||
|
Reference in New Issue
Block a user