nfc: s3fwrn5: add missing release on skb in s3fwrn5_recv_frame
authorNavid Emamdoost <navid.emamdoost@gmail.com>
Sat, 18 Jul 2020 05:31:49 +0000 (00:31 -0500)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 21 Aug 2020 09:01:51 +0000 (11:01 +0200)
[ Upstream commit 1e8fd3a97f2d83a7197876ceb4f37b4c2b00a0f3 ]

The implementation of s3fwrn5_recv_frame() is supposed to consume skb on
all execution paths. Release skb before returning -ENODEV.

Signed-off-by: Navid Emamdoost <navid.emamdoost@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/nfc/s3fwrn5/core.c

index 9d9c8d57a042d45084082e10b30f686d82b7edb4..64b58455e620be65a3e9164c2b9bb87c13e5c755 100644 (file)
@@ -209,6 +209,7 @@ int s3fwrn5_recv_frame(struct nci_dev *ndev, struct sk_buff *skb,
        case S3FWRN5_MODE_FW:
                return s3fwrn5_fw_recv_frame(ndev, skb);
        default:
+               kfree_skb(skb);
                return -ENODEV;
        }
 }