Bluetooth: Use hci_pend_le_action_lookup to look up report entries

Instead of looking through the entire list of entries we can more
efficiently use the new hci_pend_le_action_lookup() function to look up
entries specifically in the pend_le_reports list. Since the search is
now limited to the right list we can also remove an unnecessary check
for list_empty() before the lookup.

Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
This commit is contained in:
Johan Hedberg 2014-07-04 12:37:27 +03:00 committed by Marcel Holtmann
parent 501f882741
commit a7545f2afc

View File

@ -4244,14 +4244,12 @@ static void process_adv_report(struct hci_dev *hdev, u8 type, bdaddr_t *bdaddr,
return;
}
if (list_empty(&hdev->pend_le_reports))
return;
if (type == LE_ADV_DIRECT_IND)
return;
param = hci_conn_params_lookup(hdev, bdaddr, bdaddr_type);
if (!param || param->auto_connect != HCI_AUTO_CONN_REPORT)
param = hci_pend_le_action_lookup(&hdev->pend_le_reports,
bdaddr, bdaddr_type);
if (!param)
return;
if (type == LE_ADV_NONCONN_IND || type == LE_ADV_SCAN_IND)