mirror of https://gitee.com/openkylin/linux.git
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>
This commit is contained in:
parent
21b5187f23
commit
b145edcd16
|
@ -3286,7 +3286,7 @@ static int set_advertising(struct sock *sk, struct hci_dev *hdev, void *data,
|
|||
* necessary).
|
||||
*/
|
||||
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;
|
||||
|
||||
if (val != test_bit(HCI_ADVERTISING, &hdev->dev_flags)) {
|
||||
|
@ -4683,7 +4683,7 @@ void mgmt_reenable_advertising(struct hci_dev *hdev)
|
|||
{
|
||||
struct hci_request req;
|
||||
|
||||
if (hdev->conn_hash.le_num)
|
||||
if (hci_conn_num(hdev, LE_LINK) > 0)
|
||||
return;
|
||||
|
||||
if (!test_bit(HCI_ADVERTISING, &hdev->dev_flags))
|
||||
|
|
Loading…
Reference in New Issue