lkml.org 
[lkml]   [2021]   [Mar]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH 1/2] Bluetooth: Notify suspend on le conn failed
From
Date
Hi Abhishek,

> When suspending, Bluetooth disconnects all connected peers devices. If
> an LE connection is started but isn't completed, we will see an LE
> Create Connection Cancel instead of an HCI disconnect. This just adds
> a check to see if an LE cancel was the last disconnected device and wake
> the suspend thread when that is the case.
>
> Signed-off-by: Abhishek Pandit-Subedi <abhishekpandit@chromium.org>
> Reviewed-by: Archie Pusaka <apusaka@chromium.org>
> ---
> Here is an HCI trace when the issue occurred.
>
> < HCI Command: LE Create Connection (0x08|0x000d) plen 25 #187777 [hci0] 2021-02-03 21:42:35.130208
> Scan interval: 60.000 msec (0x0060)
> Scan window: 60.000 msec (0x0060)
> Filter policy: White list is not used (0x00)
> Peer address type: Random (0x01)
> Peer address: D9:DC:6B:61:EB:3A (Static)
> Own address type: Public (0x00)
> Min connection interval: 15.00 msec (0x000c)
> Max connection interval: 30.00 msec (0x0018)
> Connection latency: 20 (0x0014)
> Supervision timeout: 3000 msec (0x012c)
> Min connection length: 0.000 msec (0x0000)
> Max connection length: 0.000 msec (0x0000)
>> HCI Event: Command Status (0x0f) plen 4 #187778 [hci0] 2021-02-03 21:42:35.131184
> LE Create Connection (0x08|0x000d) ncmd 1
> Status: Success (0x00)
> < HCI Command: LE Create Connection Cancel (0x08|0x000e) plen 0 #187805 [hci0] 2021-02-03 21:42:37.183336
>> HCI Event: Command Complete (0x0e) plen 4 #187806 [hci0] 2021-02-03 21:42:37.192394
> LE Create Connection Cancel (0x08|0x000e) ncmd 1
> Status: Success (0x00)
>> HCI Event: LE Meta Event (0x3e) plen 19 #187807 [hci0] 2021-02-03 21:42:37.193400
> LE Connection Complete (0x01)
> Status: Unknown Connection Identifier (0x02)
> Handle: 0
> Role: Master (0x00)
> Peer address type: Random (0x01)
> Peer address: D9:DC:6B:61:EB:3A (Static)
> Connection interval: 0.00 msec (0x0000)
> Connection latency: 0 (0x0000)
> Supervision timeout: 0 msec (0x0000)
> Master clock accuracy: 0x00
> ... <skip a few unrelated events>
> @ MGMT Event: Controller Suspended (0x002d) plen 1 {0x0002} [hci0] 2021-02-03 21:42:39.178780
> Suspend state: Controller running (failed to suspend) (0)
> @ MGMT Event: Controller Suspended (0x002d) plen 1 {0x0001} [hci0] 2021-02-03 21:42:39.178780
> Suspend state: Controller running (failed to suspend) (0)
> ... <actual suspended time>
> < HCI Command: Set Event Filter (0x03|0x0005) plen 1 #187808 [hci0] 2021-02-04 09:23:07.313591
> Type: Clear All Filters (0x00)
>
> net/bluetooth/hci_conn.c | 10 ++++++++++
> 1 file changed, 10 insertions(+)

patch has been applied to bluetooth-next tree.

Regards

Marcel

\
 
 \ /
  Last update: 2021-03-02 18:09    [W:0.043 / U:0.528 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site