aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarcel Holtmann <marcel@holtmann.org>2013-10-10 12:47:54 -0400
committerJohan Hedberg <johan.hedberg@intel.com>2013-10-10 16:07:20 -0400
commitb145edcd1642d55a8eb7d08c954b815cb1478981 (patch)
tree7b2928961b434e6449a09dadadd570652f1bd91d
parent21b5187f23206c0343214194711c8f63e7003d0c (diff)
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: Marcel Holtmann <marcel@holtmann.org> Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
-rw-r--r--net/bluetooth/mgmt.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/net/bluetooth/mgmt.c b/net/bluetooth/mgmt.c
index 2793bfe48707..9a069b532bde 100644
--- a/net/bluetooth/mgmt.c
+++ b/net/bluetooth/mgmt.c
@@ -3286,7 +3286,7 @@ static int set_advertising(struct sock *sk, struct hci_dev *hdev, void *data,
3286 * necessary). 3286 * necessary).
3287 */ 3287 */
3288 if (!hdev_is_powered(hdev) || val == enabled || 3288 if (!hdev_is_powered(hdev) || val == enabled ||
3289 hci_conn_hash_lookup_state(hdev, LE_LINK, BT_CONNECTED)) { 3289 hci_conn_num(hdev, LE_LINK) > 0) {
3290 bool changed = false; 3290 bool changed = false;
3291 3291
3292 if (val != test_bit(HCI_ADVERTISING, &hdev->dev_flags)) { 3292 if (val != test_bit(HCI_ADVERTISING, &hdev->dev_flags)) {
@@ -4683,7 +4683,7 @@ void mgmt_reenable_advertising(struct hci_dev *hdev)
4683{ 4683{
4684 struct hci_request req; 4684 struct hci_request req;
4685 4685
4686 if (hdev->conn_hash.le_num) 4686 if (hci_conn_num(hdev, LE_LINK) > 0)
4687 return; 4687 return;
4688 4688
4689 if (!test_bit(HCI_ADVERTISING, &hdev->dev_flags)) 4689 if (!test_bit(HCI_ADVERTISING, &hdev->dev_flags))