]> git.baikalelectronics.ru Git - kernel.git/commit
wifi: brcmfmac: unmap dma buffer in brcmf_msgbuf_alloc_pktid()
authorZhengchao Shao <shaozhengchao@huawei.com>
Wed, 7 Dec 2022 01:31:14 +0000 (09:31 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 11 Mar 2023 15:43:37 +0000 (16:43 +0100)
commitc93a9e534af4eecc3097e8899a263171306bff38
tree2039efced066a4eb37708ab3e6cf453cc8ee54e0
parent19ba30138449478863691e47417b0c4685df0c2f
wifi: brcmfmac: unmap dma buffer in brcmf_msgbuf_alloc_pktid()

[ Upstream commit b9f420032f2ba1e634b22ca7b433e5c40ea663af ]

After the DMA buffer is mapped to a physical address, address is stored
in pktids in brcmf_msgbuf_alloc_pktid(). Then, pktids is parsed in
brcmf_msgbuf_get_pktid()/brcmf_msgbuf_release_array() to obtain physaddr
and later unmap the DMA buffer. But when count is always equal to
pktids->array_size, physaddr isn't stored in pktids and the DMA buffer
will not be unmapped anyway.

Fixes: 1c189dc8aa72 ("brcmfmac: Adding msgbuf protocol.")
Signed-off-by: Zhengchao Shao <shaozhengchao@huawei.com>
Reviewed-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Signed-off-by: Kalle Valo <kvalo@kernel.org>
Link: https://lore.kernel.org/r/20221207013114.1748936-1-shaozhengchao@huawei.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/wireless/broadcom/brcm80211/brcmfmac/msgbuf.c