If bt_skb_alloc() fails, ret should be -ENOMEM then pass to ERR_PTR(). Fixes: 1996d9cad6ad ("Bluetooth: btrtl: Ask 8821C to drop old firmware") Signed-off-by: Yue Haibing <yuehaibing@xxxxxxxxxx> --- drivers/bluetooth/btrtl.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/bluetooth/btrtl.c b/drivers/bluetooth/btrtl.c index 7838c89e529e..6d5b37990be6 100644 --- a/drivers/bluetooth/btrtl.c +++ b/drivers/bluetooth/btrtl.c @@ -1137,8 +1137,10 @@ struct btrtl_device_info *btrtl_initialize(struct hci_dev *hdev, if (btrtl_dev->drop_fw) { skb = bt_skb_alloc(sizeof(*cmd), GFP_KERNEL); - if (!skb) + if (!skb) { + ret = -ENOMEM; goto err_free; + } cmd = skb_put(skb, HCI_COMMAND_HDR_SIZE); cmd->opcode = cpu_to_le16(0xfc66); -- 2.34.1