]> www.infradead.org Git - users/dwmw2/linux.git/commitdiff
NFC: st95hf: Fix memleak in st95hf_in_send_cmd
authorDinghao Liu <dinghao.liu@zju.edu.cn>
Sun, 23 Aug 2020 07:23:43 +0000 (15:23 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 17 Sep 2020 11:47:45 +0000 (13:47 +0200)
[ Upstream commit f97c04c316d8fea16dca449fdfbe101fbdfee6a2 ]

When down_killable() fails, skb_resp should be freed
just like when st95hf_spi_send() fails.

Signed-off-by: Dinghao Liu <dinghao.liu@zju.edu.cn>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/nfc/st95hf/core.c

index 9642971e89ceae99733f18bbef78911a578fcd67..4578547659839983dfbbe9491374b641a1d36880 100644 (file)
@@ -966,7 +966,7 @@ static int st95hf_in_send_cmd(struct nfc_digital_dev *ddev,
        rc = down_killable(&stcontext->exchange_lock);
        if (rc) {
                WARN(1, "Semaphore is not found up in st95hf_in_send_cmd\n");
-               return rc;
+               goto free_skb_resp;
        }
 
        rc = st95hf_spi_send(&stcontext->spicontext, skb->data,