summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJohan Hedberg <johan.hedberg@intel.com>2014-07-04 12:37:27 +0300
committerMarcel Holtmann <marcel@holtmann.org>2014-07-04 11:58:10 +0200
commita7545f2afcfc49fd5341fe51e943064eefe20ea1 (patch)
treec83305abc09993a27f8fd413bf0548aeb8fbc789
parent501f882741b139da22bb3ba4bc615a6eadce5038 (diff)
downloadlinux-a7545f2afcfc49fd5341fe51e943064eefe20ea1.tar.bz2
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>
-rw-r--r--net/bluetooth/hci_event.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/net/bluetooth/hci_event.c b/net/bluetooth/hci_event.c
index 9274cd228995..c380545f1e92 100644
--- a/net/bluetooth/hci_event.c
+++ b/net/bluetooth/hci_event.c
@@ -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)