Re: [PATCH v2] Bluetooth: hci_sync: Prohibit establishing of ACL links during poweroff

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

 



Dear Shuai,


Thank you for the improved patch. Should you resend only some minor things.


Am 09.04.25 um 11:13 schrieb Shuai Zhang:

On 4/8/2025 7:51 PM, Shuai Zhang wrote:
If turning off BT during pairing, "hci_acl_create_conn_sync" has chances
to be left in cmd_sync_work_list. Then the driver will try to send
the HCI command of creating connection but failed.

bluetoothctl test step:
1. local device pair with remote device
2. once pair is complete, local device will immediately perform power off

The noun is written without a space: poweroff.

3. powe on local device fail

powe*r*

Check if the device is not starting up, that means powering off,
when establishing the ACL link, and cancel early in this case.

Do you have other suggestions? Please let me know. Thanks.

Change-Id: I72802f306a20d43282dd374dd33b8cb1a22f48d8
Signed-off-by: Shuai Zhang <quic_shuaz@xxxxxxxxxxx>
---
  net/bluetooth/hci_sync.c | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/net/bluetooth/hci_sync.c b/net/bluetooth/hci_sync.c
index c553b637c..c4f1c0f30 100644
--- a/net/bluetooth/hci_sync.c
+++ b/net/bluetooth/hci_sync.c
@@ -6755,7 +6755,7 @@ static int hci_acl_create_conn_sync(struct hci_dev *hdev, void *data)
  	struct hci_cp_create_conn cp;
  	int err;
- if (!hci_conn_valid(hdev, conn))
+	if (!hci_conn_valid(hdev, conn)|| !test_bit(HCI_UP, &hdev->flags))
  		return -ECANCELED;
/* Many controllers disallow HCI Create Connection while it is doing


Kind regards,

Paul




[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