Commit b145edcd authored by Marcel Holtmann's avatar Marcel Holtmann Committed by Johan Hedberg

Bluetooth: Use hci_conn_num() for checking number of LE connections

When checking for the current number of LE connections, use
hci_conn_num() function instead of a full blown lookup within
the connection hash or direct access of the counters.

In the case of re-enabling advertising, it is more useful to
check for any connection attempt or existing connection.
Signed-off-by: default avatarMarcel Holtmann <marcel@holtmann.org>
Signed-off-by: default avatarJohan Hedberg <johan.hedberg@intel.com>
parent 21b5187f
...@@ -3286,7 +3286,7 @@ static int set_advertising(struct sock *sk, struct hci_dev *hdev, void *data, ...@@ -3286,7 +3286,7 @@ static int set_advertising(struct sock *sk, struct hci_dev *hdev, void *data,
* necessary). * necessary).
*/ */
if (!hdev_is_powered(hdev) || val == enabled || if (!hdev_is_powered(hdev) || val == enabled ||
hci_conn_hash_lookup_state(hdev, LE_LINK, BT_CONNECTED)) { hci_conn_num(hdev, LE_LINK) > 0) {
bool changed = false; bool changed = false;
if (val != test_bit(HCI_ADVERTISING, &hdev->dev_flags)) { if (val != test_bit(HCI_ADVERTISING, &hdev->dev_flags)) {
...@@ -4683,7 +4683,7 @@ void mgmt_reenable_advertising(struct hci_dev *hdev) ...@@ -4683,7 +4683,7 @@ void mgmt_reenable_advertising(struct hci_dev *hdev)
{ {
struct hci_request req; struct hci_request req;
if (hdev->conn_hash.le_num) if (hci_conn_num(hdev, LE_LINK) > 0)
return; return;
if (!test_bit(HCI_ADVERTISING, &hdev->dev_flags)) if (!test_bit(HCI_ADVERTISING, &hdev->dev_flags))
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment