2024-04-01 11:28:29

by K, Kiran

[permalink] [raw]
Subject: [PATCH v1 1/2] Bluetooth: btintel: Direct exception event to bluetooth stack

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

Signed-off-by: Kiran K <[email protected]>
---
drivers/bluetooth/btintel.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/bluetooth/btintel.c b/drivers/bluetooth/btintel.c
index a19ebe47bd95..f2670bc2367c 100644
--- a/drivers/bluetooth/btintel.c
+++ b/drivers/bluetooth/btintel.c
@@ -3135,9 +3135,8 @@ static int btintel_diagnostics(struct hci_dev *hdev, struct sk_buff *skb)
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]);
}
--
2.34.1



2024-04-01 11:28:31

by K, Kiran

[permalink] [raw]
Subject: [PATCH v1 2/2] Bluetooth: btintel: Dump exception event

Having exception event dump in kernel log helps debugging the use cases
where snoop traces are not available.

dmesg:

[27.032666] Bluetooth: hci0: Exception occurred - type: 0xde
[27.032703] Bluetooth: hci0: ff 4f 87 80 03 01 01 de 07 01 de 06 1c ef be ad
[27.032729] Bluetooth: hci0: de ef be ad de ef be ad de ef be ad de ef be ad
[27.032753] Bluetooth: hci0: de ef be ad de ef be ad de 05 14 ef be ad de ef
[27.032778] Bluetooth: hci0: be ad de ef be ad de ef be ad de ef be ad de 43
[27.032803] Bluetooth: hci0: 10 ef be ad de ef be ad de ef be ad de ef be ad
[27.032827] Bluetooth: hci0: de

Signed-off-by: Kiran K <[email protected]>
---
drivers/bluetooth/btintel.c | 7 +++++++
1 file changed, 7 insertions(+)

diff --git a/drivers/bluetooth/btintel.c b/drivers/bluetooth/btintel.c
index f2670bc2367c..5c38fadf4c32 100644
--- a/drivers/bluetooth/btintel.c
+++ b/drivers/bluetooth/btintel.c
@@ -3119,6 +3119,7 @@ EXPORT_SYMBOL_GPL(btintel_configure_setup);
static int btintel_diagnostics(struct hci_dev *hdev, struct sk_buff *skb)
{
struct intel_tlv *tlv = (void *)&skb->data[5];
+ char buff[64];

/* The first event is always an event type TLV */
if (tlv->type != INTEL_TLV_TYPE_ID)
@@ -3129,6 +3130,12 @@ static int btintel_diagnostics(struct hci_dev *hdev, struct sk_buff *skb)
case INTEL_TLV_FATAL_EXCEPTION:
case INTEL_TLV_DEBUG_EXCEPTION:
case INTEL_TLV_TEST_EXCEPTION:
+ bt_dev_err(hdev, "Exception occurred - type: 0x%2.2x",
+ tlv->val[0]);
+ snprintf(buff, sizeof(buff), "Bluetooth: %s: ",
+ bt_dev_name(hdev));
+ print_hex_dump(KERN_ERR, buff, DUMP_PREFIX_NONE, 16, 1,
+ skb->data, skb->len, false);
/* Generate devcoredump from exception */
if (!hci_devcd_init(hdev, skb->len)) {
hci_devcd_append(hdev, skb);
--
2.34.1


2024-04-01 11:34:47

by K, Kiran

[permalink] [raw]
Subject: RE: [PATCH v1 1/2] Bluetooth: btintel: Direct exception event to bluetooth stack

Please ignore this patch. Sent it by mistake :(

> -----Original Message-----
> From: K, Kiran <[email protected]>
> Sent: Monday, April 1, 2024 5:12 PM
> To: [email protected]
> Cc: Srivatsa, Ravishankar <[email protected]>; Tumkur Narayan,
> Chethan <[email protected]>; Devegowda, Chandrashekar
> <[email protected]>; K, Kiran <[email protected]>
> Subject: [PATCH v1 1/2] Bluetooth: btintel: Direct exception event to bluetooth
> stack
>
> 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
>
> Signed-off-by: Kiran K <[email protected]>
> ---
> drivers/bluetooth/btintel.c | 3 +--
> 1 file changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/drivers/bluetooth/btintel.c b/drivers/bluetooth/btintel.c index
> a19ebe47bd95..f2670bc2367c 100644
> --- a/drivers/bluetooth/btintel.c
> +++ b/drivers/bluetooth/btintel.c
> @@ -3135,9 +3135,8 @@ static int btintel_diagnostics(struct hci_dev *hdev,
> struct sk_buff *skb)
> 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]);
> }
> --
> 2.34.1


2024-04-01 11:56:59

by bluez.test.bot

[permalink] [raw]
Subject: RE: [v1,1/2] Bluetooth: btintel: Direct exception event to bluetooth stack

This is automated email and please do not reply to this email!

Dear submitter,

Thank you for submitting the patches to the linux bluetooth mailing list.
This is a CI test results with your patch series:
PW Link:https://patchwork.kernel.org/project/bluetooth/list/?series=840239

---Test result---

Test Summary:
CheckPatch PASS 1.19 seconds
GitLint PASS 0.51 seconds
SubjectPrefix PASS 6.87 seconds
BuildKernel PASS 29.29 seconds
CheckAllWarning PASS 31.97 seconds
CheckSparse PASS 37.61 seconds
CheckSmatch FAIL 34.21 seconds
BuildKernel32 PASS 28.41 seconds
TestRunnerSetup PASS 512.17 seconds
TestRunner_l2cap-tester PASS 17.82 seconds
TestRunner_iso-tester PASS 29.53 seconds
TestRunner_bnep-tester PASS 4.67 seconds
TestRunner_mgmt-tester PASS 109.30 seconds
TestRunner_rfcomm-tester PASS 7.19 seconds
TestRunner_sco-tester PASS 18.14 seconds
TestRunner_ioctl-tester PASS 8.07 seconds
TestRunner_mesh-tester PASS 5.62 seconds
TestRunner_smp-tester PASS 6.66 seconds
TestRunner_userchan-tester PASS 4.81 seconds
IncrementalBuild PASS 32.49 seconds

Details
##############################
Test: CheckSmatch - FAIL
Desc: Run smatch tool with source
Output:

Segmentation fault (core dumped)
make[4]: *** [scripts/Makefile.build:244: net/bluetooth/hci_core.o] Error 139
make[4]: *** Deleting file 'net/bluetooth/hci_core.o'
make[3]: *** [scripts/Makefile.build:485: net/bluetooth] Error 2
make[2]: *** [scripts/Makefile.build:485: net] Error 2
make[2]: *** Waiting for unfinished jobs....
Segmentation fault (core dumped)
make[4]: *** [scripts/Makefile.build:244: drivers/bluetooth/bcm203x.o] Error 139
make[4]: *** Deleting file 'drivers/bluetooth/bcm203x.o'
make[4]: *** Waiting for unfinished jobs....
make[3]: *** [scripts/Makefile.build:485: drivers/bluetooth] Error 2
make[2]: *** [scripts/Makefile.build:485: drivers] Error 2
make[1]: *** [/github/workspace/src/src/Makefile:1919: .] Error 2
make: *** [Makefile:240: __sub-make] Error 2


---
Regards,
Linux Bluetooth