Linux bluetooth development
 help / color / mirror / Atom feed
* [PATCH v1] Bluetooth: btintel: Check if controller is ISO capable on btintel_classify_pkt_type
@ 2025-07-09 19:13 Luiz Augusto von Dentz
  2025-07-09 19:57 ` [v1] " bluez.test.bot
                   ` (2 more replies)
  0 siblings, 3 replies; 8+ messages in thread
From: Luiz Augusto von Dentz @ 2025-07-09 19:13 UTC (permalink / raw)
  To: linux-bluetooth

From: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>

Due to what seem to be a bug with variant version returned by some
firmwares the code may set hdev->classify_pkt_type with
btintel_classify_pkt_type when in fact the controller doesn't even
support ISO channels feature but may use the handle range expected from
a controllers that does causing the packets to be reclassified as ISO
causing several bugs.

Link: https://bugzilla.kernel.org/show_bug.cgi?id=219553
Link: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/2100565
Link: https://github.com/StarLabsLtd/firmware/issues/180
Fixes: f25b7fd36cc3 ("Bluetooth: Add vendor-specific packet classification for ISO data")
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
---
 drivers/bluetooth/btintel.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/bluetooth/btintel.c b/drivers/bluetooth/btintel.c
index 55cc1652bfe4..06575a0b9aee 100644
--- a/drivers/bluetooth/btintel.c
+++ b/drivers/bluetooth/btintel.c
@@ -2670,7 +2670,7 @@ static u8 btintel_classify_pkt_type(struct hci_dev *hdev, struct sk_buff *skb)
 	 * Distinguish ISO data packets form ACL data packets
 	 * based on their connection handle value range.
 	 */
-	if (hci_skb_pkt_type(skb) == HCI_ACLDATA_PKT) {
+	if (iso_capable(hdev) && hci_skb_pkt_type(skb) == HCI_ACLDATA_PKT) {
 		__u16 handle = __le16_to_cpu(hci_acl_hdr(skb)->handle);
 
 		if (hci_handle(handle) >= BTINTEL_ISODATA_HANDLE_BASE)
-- 
2.50.0


^ permalink raw reply related	[flat|nested] 8+ messages in thread

* RE: [v1] Bluetooth: btintel: Check if controller is ISO capable on btintel_classify_pkt_type
  2025-07-09 19:13 [PATCH v1] Bluetooth: btintel: Check if controller is ISO capable on btintel_classify_pkt_type Luiz Augusto von Dentz
@ 2025-07-09 19:57 ` bluez.test.bot
  2025-07-09 20:05 ` [PATCH v1] " Luiz Augusto von Dentz
  2025-07-10 15:09 ` patchwork-bot+bluetooth
  2 siblings, 0 replies; 8+ messages in thread
From: bluez.test.bot @ 2025-07-09 19:57 UTC (permalink / raw)
  To: linux-bluetooth, luiz.dentz

[-- Attachment #1: Type: text/plain, Size: 2297 bytes --]

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=980685

---Test result---

Test Summary:
CheckPatch                    PENDING   0.47 seconds
GitLint                       PENDING   0.28 seconds
SubjectPrefix                 PASS      0.09 seconds
BuildKernel                   PASS      23.88 seconds
CheckAllWarning               PASS      27.05 seconds
CheckSparse                   PASS      29.49 seconds
BuildKernel32                 PASS      23.52 seconds
TestRunnerSetup               PASS      463.59 seconds
TestRunner_l2cap-tester       PASS      25.41 seconds
TestRunner_iso-tester         PASS      36.03 seconds
TestRunner_bnep-tester        PASS      5.96 seconds
TestRunner_mgmt-tester        FAIL      133.27 seconds
TestRunner_rfcomm-tester      PASS      11.23 seconds
TestRunner_sco-tester         PASS      15.16 seconds
TestRunner_ioctl-tester       PASS      10.14 seconds
TestRunner_mesh-tester        FAIL      11.48 seconds
TestRunner_smp-tester         PASS      8.96 seconds
TestRunner_userchan-tester    PASS      6.30 seconds
IncrementalBuild              PENDING   0.64 seconds

Details
##############################
Test: CheckPatch - PENDING
Desc: Run checkpatch.pl script
Output:

##############################
Test: GitLint - PENDING
Desc: Run gitlint
Output:

##############################
Test: TestRunner_mgmt-tester - FAIL
Desc: Run mgmt-tester with test-runner
Output:
Total: 490, Passed: 485 (99.0%), Failed: 1, Not Run: 4

Failed Test Cases
LL Privacy - Add Device 3 (AL is full)               Failed       0.238 seconds
##############################
Test: TestRunner_mesh-tester - FAIL
Desc: Run mesh-tester with test-runner
Output:
Total: 10, Passed: 8 (80.0%), Failed: 2, Not Run: 0

Failed Test Cases
Mesh - Send cancel - 1                               Timed out    2.124 seconds
Mesh - Send cancel - 2                               Timed out    1.999 seconds
##############################
Test: IncrementalBuild - PENDING
Desc: Incremental build with the patches in the series
Output:



---
Regards,
Linux Bluetooth


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH v1] Bluetooth: btintel: Check if controller is ISO capable on btintel_classify_pkt_type
  2025-07-09 19:13 [PATCH v1] Bluetooth: btintel: Check if controller is ISO capable on btintel_classify_pkt_type Luiz Augusto von Dentz
  2025-07-09 19:57 ` [v1] " bluez.test.bot
@ 2025-07-09 20:05 ` Luiz Augusto von Dentz
       [not found]   ` <CABtds-0U4mD9kr708UdB+SAHRvBAPYrEaOSCjKkqTDXjJpWOUw@mail.gmail.com>
  2025-07-10 15:09 ` patchwork-bot+bluetooth
  2 siblings, 1 reply; 8+ messages in thread
From: Luiz Augusto von Dentz @ 2025-07-09 20:05 UTC (permalink / raw)
  To: linux-bluetooth, Sean Rhodes

Hi Sean,

On Wed, Jul 9, 2025 at 3:13 PM Luiz Augusto von Dentz
<luiz.dentz@gmail.com> wrote:
>
> From: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
>
> Due to what seem to be a bug with variant version returned by some
> firmwares the code may set hdev->classify_pkt_type with
> btintel_classify_pkt_type when in fact the controller doesn't even
> support ISO channels feature but may use the handle range expected from
> a controllers that does causing the packets to be reclassified as ISO
> causing several bugs.
>
> Link: https://bugzilla.kernel.org/show_bug.cgi?id=219553
> Link: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/2100565
> Link: https://github.com/StarLabsLtd/firmware/issues/180
> Fixes: f25b7fd36cc3 ("Bluetooth: Add vendor-specific packet classification for ISO data")
> Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
> ---
>  drivers/bluetooth/btintel.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/bluetooth/btintel.c b/drivers/bluetooth/btintel.c
> index 55cc1652bfe4..06575a0b9aee 100644
> --- a/drivers/bluetooth/btintel.c
> +++ b/drivers/bluetooth/btintel.c
> @@ -2670,7 +2670,7 @@ static u8 btintel_classify_pkt_type(struct hci_dev *hdev, struct sk_buff *skb)
>          * Distinguish ISO data packets form ACL data packets
>          * based on their connection handle value range.
>          */
> -       if (hci_skb_pkt_type(skb) == HCI_ACLDATA_PKT) {
> +       if (iso_capable(hdev) && hci_skb_pkt_type(skb) == HCI_ACLDATA_PKT) {
>                 __u16 handle = __le16_to_cpu(hci_acl_hdr(skb)->handle);
>
>                 if (hci_handle(handle) >= BTINTEL_ISODATA_HANDLE_BASE)
> --
> 2.50.0

Can you try with the changes above?

-- 
Luiz Augusto von Dentz

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH v1] Bluetooth: btintel: Check if controller is ISO capable on btintel_classify_pkt_type
       [not found]   ` <CABtds-0U4mD9kr708UdB+SAHRvBAPYrEaOSCjKkqTDXjJpWOUw@mail.gmail.com>
@ 2025-07-10 13:33     ` Luiz Augusto von Dentz
  2025-07-10 14:23       ` Sean Rhodes
  0 siblings, 1 reply; 8+ messages in thread
From: Luiz Augusto von Dentz @ 2025-07-10 13:33 UTC (permalink / raw)
  To: Sean Rhodes; +Cc: linux-bluetooth

Hi Sean,

On Thu, Jul 10, 2025 at 9:18 AM Sean Rhodes <sean@starlabs.systems> wrote:
>
> Hi Luiz
>
> Yes, works perfectly with that patch.
>
> Thanks
>
> Sean
>
> On Wed, 9 Jul 2025 at 21:06, Luiz Augusto von Dentz <luiz.dentz@gmail.com> wrote:
>>
>> Hi Sean,
>>
>> On Wed, Jul 9, 2025 at 3:13 PM Luiz Augusto von Dentz
>> <luiz.dentz@gmail.com> wrote:
>> >
>> > From: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
>> >
>> > Due to what seem to be a bug with variant version returned by some
>> > firmwares the code may set hdev->classify_pkt_type with
>> > btintel_classify_pkt_type when in fact the controller doesn't even
>> > support ISO channels feature but may use the handle range expected from
>> > a controllers that does causing the packets to be reclassified as ISO
>> > causing several bugs.
>> >
>> > Link: https://bugzilla.kernel.org/show_bug.cgi?id=219553
>> > Link: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/2100565
>> > Link: https://github.com/StarLabsLtd/firmware/issues/180
>> > Fixes: f25b7fd36cc3 ("Bluetooth: Add vendor-specific packet classification for ISO data")
>> > Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
>> > ---
>> >  drivers/bluetooth/btintel.c | 2 +-
>> >  1 file changed, 1 insertion(+), 1 deletion(-)
>> >
>> > diff --git a/drivers/bluetooth/btintel.c b/drivers/bluetooth/btintel.c
>> > index 55cc1652bfe4..06575a0b9aee 100644
>> > --- a/drivers/bluetooth/btintel.c
>> > +++ b/drivers/bluetooth/btintel.c
>> > @@ -2670,7 +2670,7 @@ static u8 btintel_classify_pkt_type(struct hci_dev *hdev, struct sk_buff *skb)
>> >          * Distinguish ISO data packets form ACL data packets
>> >          * based on their connection handle value range.
>> >          */
>> > -       if (hci_skb_pkt_type(skb) == HCI_ACLDATA_PKT) {
>> > +       if (iso_capable(hdev) && hci_skb_pkt_type(skb) == HCI_ACLDATA_PKT) {
>> >                 __u16 handle = __le16_to_cpu(hci_acl_hdr(skb)->handle);
>> >
>> >                 if (hci_handle(handle) >= BTINTEL_ISODATA_HANDLE_BASE)
>> > --
>> > 2.50.0
>>
>> Can you try with the changes above?
>>
>> --
>> Luiz Augusto von Dentz

Please add Tested-by so we can move to get it merged, I do intend to
send a pull request later this week.

-- 
Luiz Augusto von Dentz

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH v1] Bluetooth: btintel: Check if controller is ISO capable on btintel_classify_pkt_type
  2025-07-10 13:33     ` Luiz Augusto von Dentz
@ 2025-07-10 14:23       ` Sean Rhodes
  2025-07-10 14:32         ` Luiz Augusto von Dentz
  0 siblings, 1 reply; 8+ messages in thread
From: Sean Rhodes @ 2025-07-10 14:23 UTC (permalink / raw)
  To: Luiz Augusto von Dentz; +Cc: linux-bluetooth

Like thus? Sorry, not too familiar with the email patches.

> From: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
>
> Due to what seem to be a bug with variant version returned by some
> firmwares the code may set hdev->classify_pkt_type with
> btintel_classify_pkt_type when in fact the controller doesn't even
> support ISO channels feature but may use the handle range expected from
> a controllers that does causing the packets to be reclassified as ISO
> causing several bugs.
>
> Link: https://bugzilla.kernel.org/show_bug.cgi?id=219553
> Link: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/2100565
> Link: https://github.com/StarLabsLtd/firmware/issues/180
> Fixes: f25b7fd36cc3 ("Bluetooth: Add vendor-specific packet classification for ISO data")
> Tested-by: Sean McAllen <sean.mcallen@example.com>
> Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
> ---
>  drivers/bluetooth/btintel.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/bluetooth/btintel.c b/drivers/bluetooth/btintel.c
> index 55cc1652bfe4..06575a0b9aee 100644
> --- a/drivers/bluetooth/btintel.c
> +++ b/drivers/bluetooth/btintel.c
> @@ -2670,7 +2670,7 @@ static u8 btintel_classify_pkt_type(struct hci_dev *hdev, struct sk_buff *skb)
>          * Distinguish ISO data packets form ACL data packets
>          * based on their connection handle value range.
>          */
> -       if (hci_skb_pkt_type(skb) == HCI_ACLDATA_PKT) {
> +       if (iso_capable(hdev) && hci_skb_pkt_type(skb) == HCI_ACLDATA_PKT) {
>                 __u16 handle = __le16_to_cpu(hci_acl_hdr(skb)->handle);
>
>                 if (hci_handle(handle) >= BTINTEL_ISODATA_HANDLE_BASE)
> --
> 2.50.0


On Thu, 10 Jul 2025 at 14:33, Luiz Augusto von Dentz
<luiz.dentz@gmail.com> wrote:
>
> Hi Sean,
>
> On Thu, Jul 10, 2025 at 9:18 AM Sean Rhodes <sean@starlabs.systems> wrote:
> >
> > Hi Luiz
> >
> > Yes, works perfectly with that patch.
> >
> > Thanks
> >
> > Sean
> >
> > On Wed, 9 Jul 2025 at 21:06, Luiz Augusto von Dentz <luiz.dentz@gmail.com> wrote:
> >>
> >> Hi Sean,
> >>
> >> On Wed, Jul 9, 2025 at 3:13 PM Luiz Augusto von Dentz
> >> <luiz.dentz@gmail.com> wrote:
> >> >
> >> > From: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
> >> >
> >> > Due to what seem to be a bug with variant version returned by some
> >> > firmwares the code may set hdev->classify_pkt_type with
> >> > btintel_classify_pkt_type when in fact the controller doesn't even
> >> > support ISO channels feature but may use the handle range expected from
> >> > a controllers that does causing the packets to be reclassified as ISO
> >> > causing several bugs.
> >> >
> >> > Link: https://bugzilla.kernel.org/show_bug.cgi?id=219553
> >> > Link: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/2100565
> >> > Link: https://github.com/StarLabsLtd/firmware/issues/180
> >> > Fixes: f25b7fd36cc3 ("Bluetooth: Add vendor-specific packet classification for ISO data")
> >> > Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
> >> > ---
> >> >  drivers/bluetooth/btintel.c | 2 +-
> >> >  1 file changed, 1 insertion(+), 1 deletion(-)
> >> >
> >> > diff --git a/drivers/bluetooth/btintel.c b/drivers/bluetooth/btintel.c
> >> > index 55cc1652bfe4..06575a0b9aee 100644
> >> > --- a/drivers/bluetooth/btintel.c
> >> > +++ b/drivers/bluetooth/btintel.c
> >> > @@ -2670,7 +2670,7 @@ static u8 btintel_classify_pkt_type(struct hci_dev *hdev, struct sk_buff *skb)
> >> >          * Distinguish ISO data packets form ACL data packets
> >> >          * based on their connection handle value range.
> >> >          */
> >> > -       if (hci_skb_pkt_type(skb) == HCI_ACLDATA_PKT) {
> >> > +       if (iso_capable(hdev) && hci_skb_pkt_type(skb) == HCI_ACLDATA_PKT) {
> >> >                 __u16 handle = __le16_to_cpu(hci_acl_hdr(skb)->handle);
> >> >
> >> >                 if (hci_handle(handle) >= BTINTEL_ISODATA_HANDLE_BASE)
> >> > --
> >> > 2.50.0
> >>
> >> Can you try with the changes above?
> >>
> >> --
> >> Luiz Augusto von Dentz
>
> Please add Tested-by so we can move to get it merged, I do intend to
> send a pull request later this week.
>
> --
> Luiz Augusto von Dentz

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH v1] Bluetooth: btintel: Check if controller is ISO capable on btintel_classify_pkt_type
  2025-07-10 14:23       ` Sean Rhodes
@ 2025-07-10 14:32         ` Luiz Augusto von Dentz
  2025-07-10 14:33           ` Sean Rhodes
  0 siblings, 1 reply; 8+ messages in thread
From: Luiz Augusto von Dentz @ 2025-07-10 14:32 UTC (permalink / raw)
  To: Sean Rhodes; +Cc: linux-bluetooth

Hi Sean,

On Thu, Jul 10, 2025 at 10:23 AM Sean Rhodes <sean@starlabs.systems> wrote:
>
> Like thus? Sorry, not too familiar with the email patches.

Just do:

Tested-by: Sean Rhodes <sean@starlabs.systems>

> > From: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
> >
> > Due to what seem to be a bug with variant version returned by some
> > firmwares the code may set hdev->classify_pkt_type with
> > btintel_classify_pkt_type when in fact the controller doesn't even
> > support ISO channels feature but may use the handle range expected from
> > a controllers that does causing the packets to be reclassified as ISO
> > causing several bugs.
> >
> > Link: https://bugzilla.kernel.org/show_bug.cgi?id=219553
> > Link: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/2100565
> > Link: https://github.com/StarLabsLtd/firmware/issues/180
> > Fixes: f25b7fd36cc3 ("Bluetooth: Add vendor-specific packet classification for ISO data")
> > Tested-by: Sean McAllen <sean.mcallen@example.com>
> > Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
> > ---
> >  drivers/bluetooth/btintel.c | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/drivers/bluetooth/btintel.c b/drivers/bluetooth/btintel.c
> > index 55cc1652bfe4..06575a0b9aee 100644
> > --- a/drivers/bluetooth/btintel.c
> > +++ b/drivers/bluetooth/btintel.c
> > @@ -2670,7 +2670,7 @@ static u8 btintel_classify_pkt_type(struct hci_dev *hdev, struct sk_buff *skb)
> >          * Distinguish ISO data packets form ACL data packets
> >          * based on their connection handle value range.
> >          */
> > -       if (hci_skb_pkt_type(skb) == HCI_ACLDATA_PKT) {
> > +       if (iso_capable(hdev) && hci_skb_pkt_type(skb) == HCI_ACLDATA_PKT) {
> >                 __u16 handle = __le16_to_cpu(hci_acl_hdr(skb)->handle);
> >
> >                 if (hci_handle(handle) >= BTINTEL_ISODATA_HANDLE_BASE)
> > --
> > 2.50.0
>
>
> On Thu, 10 Jul 2025 at 14:33, Luiz Augusto von Dentz
> <luiz.dentz@gmail.com> wrote:
> >
> > Hi Sean,
> >
> > On Thu, Jul 10, 2025 at 9:18 AM Sean Rhodes <sean@starlabs.systems> wrote:
> > >
> > > Hi Luiz
> > >
> > > Yes, works perfectly with that patch.
> > >
> > > Thanks
> > >
> > > Sean
> > >
> > > On Wed, 9 Jul 2025 at 21:06, Luiz Augusto von Dentz <luiz.dentz@gmail.com> wrote:
> > >>
> > >> Hi Sean,
> > >>
> > >> On Wed, Jul 9, 2025 at 3:13 PM Luiz Augusto von Dentz
> > >> <luiz.dentz@gmail.com> wrote:
> > >> >
> > >> > From: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
> > >> >
> > >> > Due to what seem to be a bug with variant version returned by some
> > >> > firmwares the code may set hdev->classify_pkt_type with
> > >> > btintel_classify_pkt_type when in fact the controller doesn't even
> > >> > support ISO channels feature but may use the handle range expected from
> > >> > a controllers that does causing the packets to be reclassified as ISO
> > >> > causing several bugs.
> > >> >
> > >> > Link: https://bugzilla.kernel.org/show_bug.cgi?id=219553
> > >> > Link: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/2100565
> > >> > Link: https://github.com/StarLabsLtd/firmware/issues/180
> > >> > Fixes: f25b7fd36cc3 ("Bluetooth: Add vendor-specific packet classification for ISO data")
> > >> > Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
> > >> > ---
> > >> >  drivers/bluetooth/btintel.c | 2 +-
> > >> >  1 file changed, 1 insertion(+), 1 deletion(-)
> > >> >
> > >> > diff --git a/drivers/bluetooth/btintel.c b/drivers/bluetooth/btintel.c
> > >> > index 55cc1652bfe4..06575a0b9aee 100644
> > >> > --- a/drivers/bluetooth/btintel.c
> > >> > +++ b/drivers/bluetooth/btintel.c
> > >> > @@ -2670,7 +2670,7 @@ static u8 btintel_classify_pkt_type(struct hci_dev *hdev, struct sk_buff *skb)
> > >> >          * Distinguish ISO data packets form ACL data packets
> > >> >          * based on their connection handle value range.
> > >> >          */
> > >> > -       if (hci_skb_pkt_type(skb) == HCI_ACLDATA_PKT) {
> > >> > +       if (iso_capable(hdev) && hci_skb_pkt_type(skb) == HCI_ACLDATA_PKT) {
> > >> >                 __u16 handle = __le16_to_cpu(hci_acl_hdr(skb)->handle);
> > >> >
> > >> >                 if (hci_handle(handle) >= BTINTEL_ISODATA_HANDLE_BASE)
> > >> > --
> > >> > 2.50.0
> > >>
> > >> Can you try with the changes above?
> > >>
> > >> --
> > >> Luiz Augusto von Dentz
> >
> > Please add Tested-by so we can move to get it merged, I do intend to
> > send a pull request later this week.
> >
> > --
> > Luiz Augusto von Dentz



-- 
Luiz Augusto von Dentz

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH v1] Bluetooth: btintel: Check if controller is ISO capable on btintel_classify_pkt_type
  2025-07-10 14:32         ` Luiz Augusto von Dentz
@ 2025-07-10 14:33           ` Sean Rhodes
  0 siblings, 0 replies; 8+ messages in thread
From: Sean Rhodes @ 2025-07-10 14:33 UTC (permalink / raw)
  To: Luiz Augusto von Dentz; +Cc: linux-bluetooth

Tested-by: Sean Rhodes <sean@starlabs.systems>

On Thu, 10 Jul 2025 at 15:32, Luiz Augusto von Dentz
<luiz.dentz@gmail.com> wrote:
>
> Hi Sean,
>
> On Thu, Jul 10, 2025 at 10:23 AM Sean Rhodes <sean@starlabs.systems> wrote:
> >
> > Like thus? Sorry, not too familiar with the email patches.
>
> Just do:
>
> Tested-by: Sean Rhodes <sean@starlabs.systems>
>
> > > From: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
> > >
> > > Due to what seem to be a bug with variant version returned by some
> > > firmwares the code may set hdev->classify_pkt_type with
> > > btintel_classify_pkt_type when in fact the controller doesn't even
> > > support ISO channels feature but may use the handle range expected from
> > > a controllers that does causing the packets to be reclassified as ISO
> > > causing several bugs.
> > >
> > > Link: https://bugzilla.kernel.org/show_bug.cgi?id=219553
> > > Link: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/2100565
> > > Link: https://github.com/StarLabsLtd/firmware/issues/180
> > > Fixes: f25b7fd36cc3 ("Bluetooth: Add vendor-specific packet classification for ISO data")
> > > Tested-by: Sean McAllen <sean.mcallen@example.com>
> > > Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
> > > ---
> > >  drivers/bluetooth/btintel.c | 2 +-
> > >  1 file changed, 1 insertion(+), 1 deletion(-)
> > >
> > > diff --git a/drivers/bluetooth/btintel.c b/drivers/bluetooth/btintel.c
> > > index 55cc1652bfe4..06575a0b9aee 100644
> > > --- a/drivers/bluetooth/btintel.c
> > > +++ b/drivers/bluetooth/btintel.c
> > > @@ -2670,7 +2670,7 @@ static u8 btintel_classify_pkt_type(struct hci_dev *hdev, struct sk_buff *skb)
> > >          * Distinguish ISO data packets form ACL data packets
> > >          * based on their connection handle value range.
> > >          */
> > > -       if (hci_skb_pkt_type(skb) == HCI_ACLDATA_PKT) {
> > > +       if (iso_capable(hdev) && hci_skb_pkt_type(skb) == HCI_ACLDATA_PKT) {
> > >                 __u16 handle = __le16_to_cpu(hci_acl_hdr(skb)->handle);
> > >
> > >                 if (hci_handle(handle) >= BTINTEL_ISODATA_HANDLE_BASE)
> > > --
> > > 2.50.0
> >
> >
> > On Thu, 10 Jul 2025 at 14:33, Luiz Augusto von Dentz
> > <luiz.dentz@gmail.com> wrote:
> > >
> > > Hi Sean,
> > >
> > > On Thu, Jul 10, 2025 at 9:18 AM Sean Rhodes <sean@starlabs.systems> wrote:
> > > >
> > > > Hi Luiz
> > > >
> > > > Yes, works perfectly with that patch.
> > > >
> > > > Thanks
> > > >
> > > > Sean
> > > >
> > > > On Wed, 9 Jul 2025 at 21:06, Luiz Augusto von Dentz <luiz.dentz@gmail.com> wrote:
> > > >>
> > > >> Hi Sean,
> > > >>
> > > >> On Wed, Jul 9, 2025 at 3:13 PM Luiz Augusto von Dentz
> > > >> <luiz.dentz@gmail.com> wrote:
> > > >> >
> > > >> > From: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
> > > >> >
> > > >> > Due to what seem to be a bug with variant version returned by some
> > > >> > firmwares the code may set hdev->classify_pkt_type with
> > > >> > btintel_classify_pkt_type when in fact the controller doesn't even
> > > >> > support ISO channels feature but may use the handle range expected from
> > > >> > a controllers that does causing the packets to be reclassified as ISO
> > > >> > causing several bugs.
> > > >> >
> > > >> > Link: https://bugzilla.kernel.org/show_bug.cgi?id=219553
> > > >> > Link: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/2100565
> > > >> > Link: https://github.com/StarLabsLtd/firmware/issues/180
> > > >> > Fixes: f25b7fd36cc3 ("Bluetooth: Add vendor-specific packet classification for ISO data")
> > > >> > Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
> > > >> > ---
> > > >> >  drivers/bluetooth/btintel.c | 2 +-
> > > >> >  1 file changed, 1 insertion(+), 1 deletion(-)
> > > >> >
> > > >> > diff --git a/drivers/bluetooth/btintel.c b/drivers/bluetooth/btintel.c
> > > >> > index 55cc1652bfe4..06575a0b9aee 100644
> > > >> > --- a/drivers/bluetooth/btintel.c
> > > >> > +++ b/drivers/bluetooth/btintel.c
> > > >> > @@ -2670,7 +2670,7 @@ static u8 btintel_classify_pkt_type(struct hci_dev *hdev, struct sk_buff *skb)
> > > >> >          * Distinguish ISO data packets form ACL data packets
> > > >> >          * based on their connection handle value range.
> > > >> >          */
> > > >> > -       if (hci_skb_pkt_type(skb) == HCI_ACLDATA_PKT) {
> > > >> > +       if (iso_capable(hdev) && hci_skb_pkt_type(skb) == HCI_ACLDATA_PKT) {
> > > >> >                 __u16 handle = __le16_to_cpu(hci_acl_hdr(skb)->handle);
> > > >> >
> > > >> >                 if (hci_handle(handle) >= BTINTEL_ISODATA_HANDLE_BASE)
> > > >> > --
> > > >> > 2.50.0
> > > >>
> > > >> Can you try with the changes above?
> > > >>
> > > >> --
> > > >> Luiz Augusto von Dentz
> > >
> > > Please add Tested-by so we can move to get it merged, I do intend to
> > > send a pull request later this week.
> > >
> > > --
> > > Luiz Augusto von Dentz
>
>
>
> --
> Luiz Augusto von Dentz

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH v1] Bluetooth: btintel: Check if controller is ISO capable on btintel_classify_pkt_type
  2025-07-09 19:13 [PATCH v1] Bluetooth: btintel: Check if controller is ISO capable on btintel_classify_pkt_type Luiz Augusto von Dentz
  2025-07-09 19:57 ` [v1] " bluez.test.bot
  2025-07-09 20:05 ` [PATCH v1] " Luiz Augusto von Dentz
@ 2025-07-10 15:09 ` patchwork-bot+bluetooth
  2 siblings, 0 replies; 8+ messages in thread
From: patchwork-bot+bluetooth @ 2025-07-10 15:09 UTC (permalink / raw)
  To: Luiz Augusto von Dentz; +Cc: linux-bluetooth

Hello:

This patch was applied to bluetooth/bluetooth-next.git (master)
by Luiz Augusto von Dentz <luiz.von.dentz@intel.com>:

On Wed,  9 Jul 2025 15:13:33 -0400 you wrote:
> From: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
> 
> Due to what seem to be a bug with variant version returned by some
> firmwares the code may set hdev->classify_pkt_type with
> btintel_classify_pkt_type when in fact the controller doesn't even
> support ISO channels feature but may use the handle range expected from
> a controllers that does causing the packets to be reclassified as ISO
> causing several bugs.
> 
> [...]

Here is the summary with links:
  - [v1] Bluetooth: btintel: Check if controller is ISO capable on btintel_classify_pkt_type
    https://git.kernel.org/bluetooth/bluetooth-next/c/1eea42b9d33f

You are awesome, thank you!
-- 
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html



^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2025-07-10 15:09 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-07-09 19:13 [PATCH v1] Bluetooth: btintel: Check if controller is ISO capable on btintel_classify_pkt_type Luiz Augusto von Dentz
2025-07-09 19:57 ` [v1] " bluez.test.bot
2025-07-09 20:05 ` [PATCH v1] " Luiz Augusto von Dentz
     [not found]   ` <CABtds-0U4mD9kr708UdB+SAHRvBAPYrEaOSCjKkqTDXjJpWOUw@mail.gmail.com>
2025-07-10 13:33     ` Luiz Augusto von Dentz
2025-07-10 14:23       ` Sean Rhodes
2025-07-10 14:32         ` Luiz Augusto von Dentz
2025-07-10 14:33           ` Sean Rhodes
2025-07-10 15:09 ` patchwork-bot+bluetooth

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox