Re: [PATCH 1/2] Bluetooth: Notify suspend on le conn failed

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

 



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@xxxxxxxxxxxx>
> Reviewed-by: Archie Pusaka <apusaka@xxxxxxxxxxxx>
> ---
> 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




[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