From 1d597caae4efbf84b14a846f4fa84355e323940e Mon Sep 17 00:00:00 2001 From: Colin Ian King Date: Sat, 14 Nov 2020 00:15:52 +0800 Subject: [PATCH] Bluetooth: btrtl: fix incorrect skb allocation failure check BugLink: https://bugs.launchpad.net/bugs/1904221 Currently the check for a failed bt_skb_alloc allocation is incorrectly checking using IS_ERR and this can lead to a null pointer dereference. Fix this by checking for a null pointer return using the !skb idiom. Addresses-Coverity: ("Dereference null return") Fixes: 1996d9cad6ad ("Bluetooth: btrtl: Ask 8821C to drop old firmware") Signed-off-by: Colin Ian King Signed-off-by: Marcel Holtmann (cherry picked from commit f5e8e215869eed6163d5fdd309f0e674a0f23df6 linux-next) Signed-off-by: Kai-Heng Feng Signed-off-by: Timo Aaltonen --- drivers/bluetooth/btrtl.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/bluetooth/btrtl.c b/drivers/bluetooth/btrtl.c index 38b93ef22f578..cca7a3d6c9852 100644 --- a/drivers/bluetooth/btrtl.c +++ b/drivers/bluetooth/btrtl.c @@ -578,7 +578,7 @@ struct btrtl_device_info *btrtl_initialize(struct hci_dev *hdev, cmd[1] = opcode >> 8; skb = bt_skb_alloc(sizeof(cmd), GFP_KERNEL); - if (IS_ERR(skb)) + if (!skb) goto out_free; skb_put_data(skb, cmd, sizeof(cmd));