summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZijun Hu <zijun.hu@oss.qualcomm.com>2026-07-25 01:54:48 -0700
committerLuiz Augusto von Dentz <luiz.von.dentz@intel.com>2026-07-27 13:40:07 -0400
commitdcf47a799e750c895bee7daeba7e603995fa775d (patch)
treeba1079974c5c9fd08d86a53fdcaa5c6ac639f10f
parent3080fae8afcd2ea6bb1147e4a2750a48625ac0ee (diff)
downloadlinux-next-dcf47a799e750c895bee7daeba7e603995fa775d.tar.gz
linux-next-dcf47a799e750c895bee7daeba7e603995fa775d.zip
Bluetooth: btmrvl_sdio: Do not free HCI_VENDOR_PKT frame by hci_recv_frame()
For a HCI_VENDOR_PKT frame, hci_recv_frame() does not accept it and will kfree_skb() it directly. But btmrvl_sdio_card_to_host() is still calling hci_recv_frame() for the frame. Fix by freeing it with kfree_skb() directly. Signed-off-by: Zijun Hu <zijun.hu@oss.qualcomm.com> Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
-rw-r--r--drivers/bluetooth/btmrvl_sdio.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/bluetooth/btmrvl_sdio.c b/drivers/bluetooth/btmrvl_sdio.c
index 93932a0d8625..b91fc63bc9fe 100644
--- a/drivers/bluetooth/btmrvl_sdio.c
+++ b/drivers/bluetooth/btmrvl_sdio.c
@@ -799,7 +799,7 @@ static int btmrvl_sdio_card_to_host(struct btmrvl_private *priv)
skb_pull(skb, SDIO_HEADER_LEN);
if (btmrvl_process_event(priv, skb))
- hci_recv_frame(hdev, skb);
+ kfree_skb(skb);
hdev->stat.byte_rx += buf_len;
break;