brcm80211: fix possible memleak in brcmf_proto_msgbuf_attach
authorWang Yufen <wangyufen@huawei.com>
Mon, 20 Jul 2020 09:36:05 +0000 (17:36 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 29 Oct 2020 08:05:45 +0000 (09:05 +0100)
[ Upstream commit 6c151410d5b57e6bb0d91a735ac511459539a7bf ]

When brcmf_proto_msgbuf_attach fail and msgbuf->txflow_wq != NULL,
we should destroy the workqueue.

Reported-by: Hulk Robot <hulkci@huawei.com>
Signed-off-by: Wang Yufen <wangyufen@huawei.com>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
Link: https://lore.kernel.org/r/1595237765-66238-1-git-send-email-wangyufen@huawei.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/wireless/broadcom/brcm80211/brcmfmac/msgbuf.c

index ab9f136..e306e5a 100644 (file)
@@ -1540,6 +1540,8 @@ fail:
                                          BRCMF_TX_IOCTL_MAX_MSG_SIZE,
                                          msgbuf->ioctbuf,
                                          msgbuf->ioctbuf_handle);
+               if (msgbuf->txflow_wq)
+                       destroy_workqueue(msgbuf->txflow_wq);
                kfree(msgbuf);
        }
        return -ENOMEM;