]> www.infradead.org Git - users/hch/misc.git/commitdiff
Bluetooth: btintel: Direct exception event to bluetooth stack
authorKiran K <kiran.k@intel.com>
Tue, 22 Oct 2024 09:11:34 +0000 (14:41 +0530)
committerLuiz Augusto von Dentz <luiz.von.dentz@intel.com>
Tue, 12 Nov 2024 16:39:12 +0000 (11:39 -0500)
Have exception event part of HCI traces which helps for debug.

snoop traces:
> HCI Event: Vendor (0xff) plen 79
        Vendor Prefix (0x8780)
      Intel Extended Telemetry (0x03)
        Unknown extended telemetry event type (0xde)
        01 01 de
        Unknown extended subevent 0x07
        01 01 de 07 01 de 06 1c ef be ad de ef be ad de
        ef be ad de ef be ad de ef be ad de ef be ad de
        ef be ad de 05 14 ef be ad de ef be ad de ef be
        ad de ef be ad de ef be ad de 43 10 ef be ad de
        ef be ad de ef be ad de ef be ad de

Fixes: af395330abed ("Bluetooth: btintel: Add Intel devcoredump support")
Signed-off-by: Kiran K <kiran.k@intel.com>
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
drivers/bluetooth/btintel.c

index 438b92967bc364c63f46242630466c5c62009634..30a32ebbcc681bde3f1abc795b64bab44ad86bd6 100644 (file)
@@ -3288,13 +3288,12 @@ static int btintel_diagnostics(struct hci_dev *hdev, struct sk_buff *skb)
        case INTEL_TLV_TEST_EXCEPTION:
                /* Generate devcoredump from exception */
                if (!hci_devcd_init(hdev, skb->len)) {
-                       hci_devcd_append(hdev, skb);
+                       hci_devcd_append(hdev, skb_clone(skb, GFP_ATOMIC));
                        hci_devcd_complete(hdev);
                } else {
                        bt_dev_err(hdev, "Failed to generate devcoredump");
-                       kfree_skb(skb);
                }
-               return 0;
+       break;
        default:
                bt_dev_err(hdev, "Invalid exception type %02X", tlv->val[0]);
        }