Messages in this thread Patch in this message | | | From | Jonas Dreßler <> | Subject | [PATCH 1/5] Bluetooth: Remove superfluous call to hci_conn_check_pending() | Date | Tue, 2 Jan 2024 19:59:28 +0100 |
| |
The "pending connections" feature was originally introduced with commit 4c67bc74f016b0d360b8573e18969c0ff7926974 and 6bd57416127e92d35e6798925502c84e14a3a966 to handle controllers supporting only a single connection request at a time. Later things were extended to also cancel ongoing inquiries on connect() with commit 89e65975fea5c25706e8cc3a89f9f97b20fc45ad.
With commit a9de9248064bfc8eb0a183a6a951a4e7b5ca10a4, hci_conn_check_pending() was introduced as a helper to consolidate a few places where we check for pending connections (indicated by the BT_CONNECT2 flag) and then try to connect.
This refactoring commit also snuck in two more calls to hci_conn_check_pending():
- One is in the failure callback of hci_cs_inquiry(), this one probably makes sense: If we send an "HCI Inquiry" command and then immediately after a "Create Connection" command, the "Create Connection" command might fail before the "HCI Inquiry" command, and then we want to retry the "Create Connection" on failure of the "HCI Inquiry".
- The other added call to hci_conn_check_pending() is in the event handler for the "Remote Name" event, this seems unrelated and is possibly a copy-paste error, so remove that one.
Fixes: a9de9248064bfc8eb0a183a6a951a4e7b5ca10a4 Signed-off-by: Jonas Dreßler <verdre@v0yd.nl> --- net/bluetooth/hci_event.c | 2 -- 1 file changed, 2 deletions(-)
diff --git a/net/bluetooth/hci_event.c b/net/bluetooth/hci_event.c index 31ca320ce..13396329f 100644 --- a/net/bluetooth/hci_event.c +++ b/net/bluetooth/hci_event.c @@ -3538,8 +3538,6 @@ static void hci_remote_name_evt(struct hci_dev *hdev, void *data, bt_dev_dbg(hdev, "status 0x%2.2x", ev->status); - hci_conn_check_pending(hdev); - hci_dev_lock(hdev); conn = hci_conn_hash_lookup_ba(hdev, ACL_LINK, &ev->bdaddr); -- 2.43.0
| |