Bluetooth: consolidate error paths in hci_phy_link_complete_evt()
authorSergey Shtylyov <s.shtylyov@omprussia.ru>
Wed, 7 Oct 2020 15:54:15 +0000 (18:54 +0300)
committerMarcel Holtmann <marcel@holtmann.org>
Wed, 11 Nov 2020 11:11:03 +0000 (12:11 +0100)
hci_phy_link_complete_evt() has several duplicate error paths -- consolidate
them, using the *goto* statements.

Signed-off-by: Sergey Shtylyov <s.shtylyov@omprussia.ru>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
net/bluetooth/hci_event.c

index 17a7269..8281a5c 100644 (file)
@@ -4936,20 +4936,15 @@ static void hci_phy_link_complete_evt(struct hci_dev *hdev,
        hci_dev_lock(hdev);
 
        hcon = hci_conn_hash_lookup_handle(hdev, ev->phy_handle);
-       if (!hcon) {
-               hci_dev_unlock(hdev);
-               return;
-       }
+       if (!hcon)
+               goto unlock;
 
-       if (!hcon->amp_mgr) {
-               hci_dev_unlock(hdev);
-               return;
-       }
+       if (!hcon->amp_mgr)
+               goto unlock;
 
        if (ev->status) {
                hci_conn_del(hcon);
-               hci_dev_unlock(hdev);
-               return;
+               goto unlock;
        }
 
        bredr_hcon = hcon->amp_mgr->l2cap_conn->hcon;
@@ -4966,6 +4961,7 @@ static void hci_phy_link_complete_evt(struct hci_dev *hdev,
 
        amp_physical_cfm(bredr_hcon, hcon);
 
+unlock:
        hci_dev_unlock(hdev);
 }