Re: [Bug 215576] HSP/HFP mSBC profile broken with QCA6174

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Kiran,

On Fri, Feb 18, 2022 at 6:35 AM <bugzilla-daemon@xxxxxxxxxx> wrote:
>
> https://bugzilla.kernel.org/show_bug.cgi?id=215576
>
> The Linux kernel's regression tracker (Thorsten Leemhuis) (regressions@xxxxxxxxxxxxx) changed:
>
>            What    |Removed                     |Added
> ----------------------------------------------------------------------------
>                  CC|                            |marcel@xxxxxxxxxxxx,
>                    |                            |regressions@xxxxxxxxxxxxx
>
> --- Comment #3 from The Linux kernel's regression tracker (Thorsten Leemhuis) (regressions@xxxxxxxxxxxxx) ---
> hey bluetooth maintainers, what the status here? This regression was reported
> more than ten days ago, it was bisected, and a second person roughly confirms
> it, nevertheless there wasn't a single reply yet. Is somebody looking into
> this?
>
> --
> You may reply to this email to add a comment.
>
> You are receiving this mail because:
> You are the assignee for the bug.

Looks like a regression introduced by:

https://git.kernel.org/pub/scm/linux/kernel/git/bluetooth/bluetooth-next.git/commit/?id=b2af264ad3af437238c9500aa830ebcafb180e05

It seems BT_VOICE sets BT_CODEC_TRANSPARENT when perhaps should be
setting BT_CODEC_MSBC:

diff --git a/net/bluetooth/sco.c b/net/bluetooth/sco.c
index 8eabf41b2993..b35c772efc7e 100644
--- a/net/bluetooth/sco.c
+++ b/net/bluetooth/sco.c
@@ -879,15 +879,9 @@ static int sco_sock_setsockopt(struct socket
*sock, int level, int optname,
                }

                sco_pi(sk)->setting = voice.setting;
-               hdev = hci_get_route(&sco_pi(sk)->dst, &sco_pi(sk)->src,
-                                    BDADDR_BREDR);
-               if (!hdev) {
-                       err = -EBADFD;
-                       break;
-               }
-               if (enhanced_sco_capable(hdev) &&
-                   voice.setting == BT_VOICE_TRANSPARENT)
-                       sco_pi(sk)->codec.id = BT_CODEC_TRANSPARENT;
+               if (voice.setting == BT_VOICE_TRANSPARENT)
+                       sco_pi(sk)->codec.id = BT_CODEC_MSBC;
+
                hci_dev_put(hdev);
                break;
-- 
Luiz Augusto von Dentz



[Index of Archives]     [Bluez Devel]     [Linux Wireless Networking]     [Linux Wireless Personal Area Networking]     [Linux ATH6KL]     [Linux USB Devel]     [Linux Media Drivers]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Big List of Linux Books]

  Powered by Linux