Hallo, on my two notebooks, one with Ubuntu (Mainline Kernel 6.9.3, bluez 5.7.2) and the other one with Manjaro (6.9.3, bluez 5.7.6) I'm having problems with my Sony WH-1000XM3 and Shure BT1. Either A2DP or HFP/HSP is not available after the connection has been established after a reboot or a reconnection. It's reproducible that with the WH-1000XM3 the A2DP profiles are missing and with the Shure BT1 HFP/HSP profiles are missing. It also takes longer than usual to connect and I have a log message in the journal:
Jun 06 16:28:10 liebig bluetoothd[854]: profiles/audio/avdtp.c:cancel_request() Discover: Connection timed out (110)
When I disable and re-enable bluetooth (while the Headsets are still on) and trigger a reconnect from the notebooks, A2DP and HFP/HSP Profiles are available again.
I also tested it with 6.8.12 and it's the same problem. 6.8.11 and 6.9.2 don't have the problem. So I did a bisection. After reverting commit af1d425b6dc67cd67809f835dd7afb6be4d43e03 "Bluetooth: HCI: Remove HCI_AMP support" for 6.9.3 it's working again without problems.
Let me know if you need anything from me.
Best regards, Timo
Hi Timo,
On Thu, Jun 6, 2024 at 4:46 PM Timo Schröder der.timosch@gmail.com wrote:
Hallo, on my two notebooks, one with Ubuntu (Mainline Kernel 6.9.3, bluez 5.7.2) and the other one with Manjaro (6.9.3, bluez 5.7.6) I'm having problems with my Sony WH-1000XM3 and Shure BT1. Either A2DP or HFP/HSP is not available after the connection has been established after a reboot or a reconnection. It's reproducible that with the WH-1000XM3 the A2DP profiles are missing and with the Shure BT1 HFP/HSP profiles are missing. It also takes longer than usual to connect and I have a log message in the journal:
Jun 06 16:28:10 liebig bluetoothd[854]: profiles/audio/avdtp.c:cancel_request() Discover: Connection timed out (110)
When I disable and re-enable bluetooth (while the Headsets are still on) and trigger a reconnect from the notebooks, A2DP and HFP/HSP Profiles are available again.
I also tested it with 6.8.12 and it's the same problem. 6.8.11 and 6.9.2 don't have the problem. So I did a bisection. After reverting commit af1d425b6dc67cd67809f835dd7afb6be4d43e03 "Bluetooth: HCI: Remove HCI_AMP support" for 6.9.3 it's working again without problems.
Let me know if you need anything from me.
Wait what, that patch has nothing to do with any of these profiles not really sure how that would cause a regression really, are you sure you don't have actual connection timeout happening at the link layer and that by some chance didn't happen when running with HCI_AMP reverted?
I'd be surprised that HCI_AMP has any effect in most controllers anyway, only virtual controllers was using that afaik.
On 06.06.24 23:23, Luiz Augusto von Dentz wrote:
On Thu, Jun 6, 2024 at 4:46 PM Timo Schröder der.timosch@gmail.com wrote:
on my two notebooks, one with Ubuntu (Mainline Kernel 6.9.3, bluez 5.7.2) and the other one with Manjaro (6.9.3, bluez 5.7.6) I'm having problems with my Sony WH-1000XM3 and Shure BT1. Either A2DP or HFP/HSP is not available after the connection has been established after a reboot or a reconnection. It's reproducible that with the WH-1000XM3 the A2DP profiles are missing and with the Shure BT1 HFP/HSP profiles are missing. It also takes longer than usual to connect and I have a log message in the journal:
Jun 06 16:28:10 liebig bluetoothd[854]: profiles/audio/avdtp.c:cancel_request() Discover: Connection timed out (110)
When I disable and re-enable bluetooth (while the Headsets are still on) and trigger a reconnect from the notebooks, A2DP and HFP/HSP Profiles are available again.
I also tested it with 6.8.12 and it's the same problem. 6.8.11 and 6.9.2 don't have the problem. So I did a bisection. After reverting commit af1d425b6dc67cd67809f835dd7afb6be4d43e03 "Bluetooth: HCI: Remove HCI_AMP support" for 6.9.3 it's working again without problems.
Let me know if you need anything from me.
Wait what, that patch has nothing to do with any of these profiles not really sure how that would cause a regression really, are you sure you don't have actual connection timeout happening at the link layer and that by some chance didn't happen when running with HCI_AMP reverted?
I'd be surprised that HCI_AMP has any effect in most controllers anyway, only virtual controllers was using that afaik.
Stupid question from a bystander without knowledge in the field (so feel free to ignore this): is that patch maybe causing trouble because it has some hidden dependency on a earlier change that was not backported to 6.9.y?
Timo, to rule that out (and it's good to know in general, too) it would be good to known if current mainline (e.g. 6.10-rc) is affected as well.
Ciao, Thorsten (wearing his 'the Linux kernel's regression tracker' hat) -- Everything you wanna know about Linux kernel regression tracking: https://linux-regtracking.leemhuis.info/about/#tldr If I did something stupid, please tell me, as explained on that page.
Am Fr., 7. Juni 2024 um 08:10 Uhr schrieb Linux regression tracking (Thorsten Leemhuis) regressions@leemhuis.info:
On 06.06.24 23:23, Luiz Augusto von Dentz wrote:
On Thu, Jun 6, 2024 at 4:46 PM Timo Schröder der.timosch@gmail.com wrote:
on my two notebooks, one with Ubuntu (Mainline Kernel 6.9.3, bluez 5.7.2) and the other one with Manjaro (6.9.3, bluez 5.7.6) I'm having problems with my Sony WH-1000XM3 and Shure BT1. Either A2DP or HFP/HSP is not available after the connection has been established after a reboot or a reconnection. It's reproducible that with the WH-1000XM3 the A2DP profiles are missing and with the Shure BT1 HFP/HSP profiles are missing. It also takes longer than usual to connect and I have a log message in the journal:
Jun 06 16:28:10 liebig bluetoothd[854]: profiles/audio/avdtp.c:cancel_request() Discover: Connection timed out (110)
When I disable and re-enable bluetooth (while the Headsets are still on) and trigger a reconnect from the notebooks, A2DP and HFP/HSP Profiles are available again.
I also tested it with 6.8.12 and it's the same problem. 6.8.11 and 6.9.2 don't have the problem. So I did a bisection. After reverting commit af1d425b6dc67cd67809f835dd7afb6be4d43e03 "Bluetooth: HCI: Remove HCI_AMP support" for 6.9.3 it's working again without problems.
Let me know if you need anything from me.
Wait what, that patch has nothing to do with any of these profiles not really sure how that would cause a regression really, are you sure you don't have actual connection timeout happening at the link layer and that by some chance didn't happen when running with HCI_AMP reverted?
I'd be surprised that HCI_AMP has any effect in most controllers anyway, only virtual controllers was using that afaik.
Stupid question from a bystander without knowledge in the field (so feel free to ignore this): is that patch maybe causing trouble because it has some hidden dependency on a earlier change that was not backported to 6.9.y?
Timo, to rule that out (and it's good to know in general, too) it would be good to known if current mainline (e.g. 6.10-rc) is affected as well.
Ciao, Thorsten (wearing his 'the Linux kernel's regression tracker' hat)
Everything you wanna know about Linux kernel regression tracking: https://linux-regtracking.leemhuis.info/about/#tldr If I did something stupid, please tell me, as explained on that page.
Hallo Thorsten, I tried with 6.10-rc2 and it's the same problem on my systems.
Hi Timo,
On Fri, Jun 7, 2024 at 5:43 PM Timo Schröder der.timosch@gmail.com wrote:
Am Fr., 7. Juni 2024 um 08:10 Uhr schrieb Linux regression tracking (Thorsten Leemhuis) regressions@leemhuis.info:
On 06.06.24 23:23, Luiz Augusto von Dentz wrote:
On Thu, Jun 6, 2024 at 4:46 PM Timo Schröder der.timosch@gmail.com wrote:
on my two notebooks, one with Ubuntu (Mainline Kernel 6.9.3, bluez 5.7.2) and the other one with Manjaro (6.9.3, bluez 5.7.6) I'm having problems with my Sony WH-1000XM3 and Shure BT1. Either A2DP or HFP/HSP is not available after the connection has been established after a reboot or a reconnection. It's reproducible that with the WH-1000XM3 the A2DP profiles are missing and with the Shure BT1 HFP/HSP profiles are missing. It also takes longer than usual to connect and I have a log message in the journal:
Jun 06 16:28:10 liebig bluetoothd[854]: profiles/audio/avdtp.c:cancel_request() Discover: Connection timed out (110)
When I disable and re-enable bluetooth (while the Headsets are still on) and trigger a reconnect from the notebooks, A2DP and HFP/HSP Profiles are available again.
I also tested it with 6.8.12 and it's the same problem. 6.8.11 and 6.9.2 don't have the problem. So I did a bisection. After reverting commit af1d425b6dc67cd67809f835dd7afb6be4d43e03 "Bluetooth: HCI: Remove HCI_AMP support" for 6.9.3 it's working again without problems.
Let me know if you need anything from me.
Wait what, that patch has nothing to do with any of these profiles not really sure how that would cause a regression really, are you sure you don't have actual connection timeout happening at the link layer and that by some chance didn't happen when running with HCI_AMP reverted?
I'd be surprised that HCI_AMP has any effect in most controllers anyway, only virtual controllers was using that afaik.
Stupid question from a bystander without knowledge in the field (so feel free to ignore this): is that patch maybe causing trouble because it has some hidden dependency on a earlier change that was not backported to 6.9.y?
Timo, to rule that out (and it's good to know in general, too) it would be good to known if current mainline (e.g. 6.10-rc) is affected as well.
Ciao, Thorsten (wearing his 'the Linux kernel's regression tracker' hat)
Everything you wanna know about Linux kernel regression tracking: https://linux-regtracking.leemhuis.info/about/#tldr If I did something stupid, please tell me, as explained on that page.
Hallo Thorsten, I tried with 6.10-rc2 and it's the same problem on my systems.
Could you please create a issue at https://github.com/bluez/bluez/issues and then attach btmon traces and bluetoothd? This is a really weird regression, also is your system using pulseaudio or pipewire?
Hi Luiz, as requested I opened an issue. Please see: https://github.com/bluez/bluez/issues/865
Best regards, Timo
Am Sa., 8. Juni 2024 um 00:01 Uhr schrieb Luiz Augusto von Dentz luiz.dentz@gmail.com:
Hi Timo,
On Fri, Jun 7, 2024 at 5:43 PM Timo Schröder der.timosch@gmail.com wrote:
Am Fr., 7. Juni 2024 um 08:10 Uhr schrieb Linux regression tracking (Thorsten Leemhuis) regressions@leemhuis.info:
On 06.06.24 23:23, Luiz Augusto von Dentz wrote:
On Thu, Jun 6, 2024 at 4:46 PM Timo Schröder der.timosch@gmail.com wrote:
on my two notebooks, one with Ubuntu (Mainline Kernel 6.9.3, bluez 5.7.2) and the other one with Manjaro (6.9.3, bluez 5.7.6) I'm having problems with my Sony WH-1000XM3 and Shure BT1. Either A2DP or HFP/HSP is not available after the connection has been established after a reboot or a reconnection. It's reproducible that with the WH-1000XM3 the A2DP profiles are missing and with the Shure BT1 HFP/HSP profiles are missing. It also takes longer than usual to connect and I have a log message in the journal:
Jun 06 16:28:10 liebig bluetoothd[854]: profiles/audio/avdtp.c:cancel_request() Discover: Connection timed out (110)
When I disable and re-enable bluetooth (while the Headsets are still on) and trigger a reconnect from the notebooks, A2DP and HFP/HSP Profiles are available again.
I also tested it with 6.8.12 and it's the same problem. 6.8.11 and 6.9.2 don't have the problem. So I did a bisection. After reverting commit af1d425b6dc67cd67809f835dd7afb6be4d43e03 "Bluetooth: HCI: Remove HCI_AMP support" for 6.9.3 it's working again without problems.
Let me know if you need anything from me.
Wait what, that patch has nothing to do with any of these profiles not really sure how that would cause a regression really, are you sure you don't have actual connection timeout happening at the link layer and that by some chance didn't happen when running with HCI_AMP reverted?
I'd be surprised that HCI_AMP has any effect in most controllers anyway, only virtual controllers was using that afaik.
Stupid question from a bystander without knowledge in the field (so feel free to ignore this): is that patch maybe causing trouble because it has some hidden dependency on a earlier change that was not backported to 6.9.y?
Timo, to rule that out (and it's good to know in general, too) it would be good to known if current mainline (e.g. 6.10-rc) is affected as well.
Ciao, Thorsten (wearing his 'the Linux kernel's regression tracker' hat)
Everything you wanna know about Linux kernel regression tracking: https://linux-regtracking.leemhuis.info/about/#tldr If I did something stupid, please tell me, as explained on that page.
Hallo Thorsten, I tried with 6.10-rc2 and it's the same problem on my systems.
Could you please create a issue at https://github.com/bluez/bluez/issues and then attach btmon traces and bluetoothd? This is a really weird regression, also is your system using pulseaudio or pipewire?
-- Luiz Augusto von Dentz
#regzbot ^introduced: af1d425b6dc6
Dear Timo,
Am 06.06.24 um 22:46 schrieb Timo Schröder:
on my two notebooks, one with Ubuntu (Mainline Kernel 6.9.3, bluez 5.7.2) and the other one with Manjaro (6.9.3, bluez 5.7.6) I'm having problems with my Sony WH-1000XM3 and Shure BT1. Either A2DP or HFP/HSP is not available after the connection has been established after a reboot or a reconnection. It's reproducible that with the WH-1000XM3 the A2DP profiles are missing and with the Shure BT1 HFP/HSP profiles are missing. It also takes longer than usual to connect and I have a log message in the journal:
Jun 06 16:28:10 liebig bluetoothd[854]: profiles/audio/avdtp.c:cancel_request() Discover: Connection timed out (110)
When I disable and re-enable bluetooth (while the Headsets are still on) and trigger a reconnect from the notebooks, A2DP and HFP/HSP Profiles are available again.
I also tested it with 6.8.12 and it's the same problem. 6.8.11 and 6.9.2 don't have the problem. So I did a bisection. After reverting commit af1d425b6dc67cd67809f835dd7afb6be4d43e03 "Bluetooth: HCI: Remove HCI_AMP support" for 6.9.3 it's working again without problems.
Thank you for bisecting the issue.
Let me know if you need anything from me.
If you could test the master branch or bluetooth-next, and, if reproducible, also with the upstream commit 84a4bb6548a29326564f0e659fb8064503ecc1c7 reverted, that’d be great.
Kind regards,
Paul
Hi Paul, I built kernels with bluetooth-next and it's the same problem on both systems. After reverting 84a4bb6548a29326564f0e659fb806 4503ecc1c7 the problem is gone.
Best regards, Timo
Am Fr., 7. Juni 2024 um 05:55 Uhr schrieb Paul Menzel pmenzel@molgen.mpg.de:
#regzbot ^introduced: af1d425b6dc6
Dear Timo,
Am 06.06.24 um 22:46 schrieb Timo Schröder:
on my two notebooks, one with Ubuntu (Mainline Kernel 6.9.3, bluez 5.7.2) and the other one with Manjaro (6.9.3, bluez 5.7.6) I'm having problems with my Sony WH-1000XM3 and Shure BT1. Either A2DP or HFP/HSP is not available after the connection has been established after a reboot or a reconnection. It's reproducible that with the WH-1000XM3 the A2DP profiles are missing and with the Shure BT1 HFP/HSP profiles are missing. It also takes longer than usual to connect and I have a log message in the journal:
Jun 06 16:28:10 liebig bluetoothd[854]: profiles/audio/avdtp.c:cancel_request() Discover: Connection timed out (110)
When I disable and re-enable bluetooth (while the Headsets are still on) and trigger a reconnect from the notebooks, A2DP and HFP/HSP Profiles are available again.
I also tested it with 6.8.12 and it's the same problem. 6.8.11 and 6.9.2 don't have the problem. So I did a bisection. After reverting commit af1d425b6dc67cd67809f835dd7afb6be4d43e03 "Bluetooth: HCI: Remove HCI_AMP support" for 6.9.3 it's working again without problems.
Thank you for bisecting the issue.
Let me know if you need anything from me.
If you could test the master branch or bluetooth-next, and, if reproducible, also with the upstream commit 84a4bb6548a29326564f0e659fb8064503ecc1c7 reverted, that’d be great.
Kind regards,
Paul
The amp_id argument of l2cap_connect() was removed in commit 84a4bb6548a2 ("Bluetooth: HCI: Remove HCI_AMP support")
It was always called with amp_id == 0, i.e. AMP_ID_BREDR == 0x00 (ie. non-AMP controller). In the above commit, the code path for amp_id != 0 was preserved, although it should have used the amp_id == 0 one.
Restore the previous behavior of the non-AMP code path, to fix problems with L2CAP connections.
Fixes: 84a4bb6548a2 ("Bluetooth: HCI: Remove HCI_AMP support") Signed-off-by: Pauli Virtanen pav@iki.fi ---
Notes: Tried proofreading the commit, and this part seemed suspicious. Can you try if this fixes the problem?
net/bluetooth/l2cap_core.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/net/bluetooth/l2cap_core.c b/net/bluetooth/l2cap_core.c index c49e0d4b3c0d..fc633feb12a1 100644 --- a/net/bluetooth/l2cap_core.c +++ b/net/bluetooth/l2cap_core.c @@ -4016,8 +4016,8 @@ static void l2cap_connect(struct l2cap_conn *conn, struct l2cap_cmd_hdr *cmd, status = L2CAP_CS_NO_INFO; } } else { - l2cap_state_change(chan, BT_CONNECT2); - result = L2CAP_CR_PEND; + l2cap_state_change(chan, BT_CONFIG); + result = L2CAP_CR_SUCCESS; status = L2CAP_CS_AUTHEN_PEND; } } else {
Hi,
Thanks for your patch.
FYI: kernel test robot notices the stable kernel rule is not satisfied.
The check is based on https://www.kernel.org/doc/html/latest/process/stable-kernel-rules.html#opti...
Rule: add the tag "Cc: stable@vger.kernel.org" in the sign-off area to have the patch automatically included in the stable tree. Subject: [PATCH] Bluetooth: fix connection setup in l2cap_connect Link: https://lore.kernel.org/stable/de9169c3e607696a9430f5beb182c914c136edcf.1717...
Hi Pauli,
unfortunately it doesn't fix the issue. I'm still experiencing the same behaviour. I attached btmon traces and bluetoothd log.
Best regards, Timo
Am So., 9. Juni 2024 um 00:02 Uhr schrieb Pauli Virtanen pav@iki.fi:
The amp_id argument of l2cap_connect() was removed in commit 84a4bb6548a2 ("Bluetooth: HCI: Remove HCI_AMP support")
It was always called with amp_id == 0, i.e. AMP_ID_BREDR == 0x00 (ie. non-AMP controller). In the above commit, the code path for amp_id != 0 was preserved, although it should have used the amp_id == 0 one.
Restore the previous behavior of the non-AMP code path, to fix problems with L2CAP connections.
Fixes: 84a4bb6548a2 ("Bluetooth: HCI: Remove HCI_AMP support") Signed-off-by: Pauli Virtanen pav@iki.fi
Notes: Tried proofreading the commit, and this part seemed suspicious. Can you try if this fixes the problem?
net/bluetooth/l2cap_core.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/net/bluetooth/l2cap_core.c b/net/bluetooth/l2cap_core.c index c49e0d4b3c0d..fc633feb12a1 100644 --- a/net/bluetooth/l2cap_core.c +++ b/net/bluetooth/l2cap_core.c @@ -4016,8 +4016,8 @@ static void l2cap_connect(struct l2cap_conn *conn, struct l2cap_cmd_hdr *cmd, status = L2CAP_CS_NO_INFO; } } else {
l2cap_state_change(chan, BT_CONNECT2);
result = L2CAP_CR_PEND;
l2cap_state_change(chan, BT_CONFIG);
result = L2CAP_CR_SUCCESS; status = L2CAP_CS_AUTHEN_PEND; } } else {
-- 2.45.2
Hi,
su, 2024-06-09 kello 14:49 +0200, Timo Schröder kirjoitti:
Hi Pauli,
unfortunately it doesn't fix the issue. I'm still experiencing the same behaviour. I attached btmon traces and bluetoothd log.
Right, sorry, I see now the patch is wrong and did it for the wrong if branch... I'll send a v2.
Pauli
Best regards, Timo
Am So., 9. Juni 2024 um 00:02 Uhr schrieb Pauli Virtanen pav@iki.fi:
The amp_id argument of l2cap_connect() was removed in commit 84a4bb6548a2 ("Bluetooth: HCI: Remove HCI_AMP support")
It was always called with amp_id == 0, i.e. AMP_ID_BREDR == 0x00 (ie. non-AMP controller). In the above commit, the code path for amp_id != 0 was preserved, although it should have used the amp_id == 0 one.
Restore the previous behavior of the non-AMP code path, to fix problems with L2CAP connections.
Fixes: 84a4bb6548a2 ("Bluetooth: HCI: Remove HCI_AMP support") Signed-off-by: Pauli Virtanen pav@iki.fi
Notes: Tried proofreading the commit, and this part seemed suspicious. Can you try if this fixes the problem?
net/bluetooth/l2cap_core.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/net/bluetooth/l2cap_core.c b/net/bluetooth/l2cap_core.c index c49e0d4b3c0d..fc633feb12a1 100644 --- a/net/bluetooth/l2cap_core.c +++ b/net/bluetooth/l2cap_core.c @@ -4016,8 +4016,8 @@ static void l2cap_connect(struct l2cap_conn *conn, struct l2cap_cmd_hdr *cmd, status = L2CAP_CS_NO_INFO; } } else {
l2cap_state_change(chan, BT_CONNECT2);
result = L2CAP_CR_PEND;
l2cap_state_change(chan, BT_CONFIG);
result = L2CAP_CR_SUCCESS; status = L2CAP_CS_AUTHEN_PEND; } } else {
-- 2.45.2
linux-stable-mirror@lists.linaro.org