mirror of
https://github.com/torvalds/linux.git
synced 2024-10-31 01:01:52 +00:00
Bluetooth: Add helper function for clearing the discovery filter
The discovery filter allocates memory for its UUID list. So use a helper function to free it and reset it to default states. Signed-off-by: Marcel Holtmann <marcel@holtmann.org> Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
This commit is contained in:
parent
66ea9427e0
commit
0256325ed6
@ -509,6 +509,14 @@ static inline void discovery_init(struct hci_dev *hdev)
|
||||
hdev->discovery.rssi = HCI_RSSI_INVALID;
|
||||
}
|
||||
|
||||
static inline void hci_discovery_filter_clear(struct hci_dev *hdev)
|
||||
{
|
||||
hdev->discovery.rssi = HCI_RSSI_INVALID;
|
||||
hdev->discovery.uuid_count = 0;
|
||||
kfree(hdev->discovery.uuids);
|
||||
hdev->discovery.uuids = NULL;
|
||||
}
|
||||
|
||||
bool hci_discovery_active(struct hci_dev *hdev);
|
||||
|
||||
void hci_discovery_set_state(struct hci_dev *hdev, int state);
|
||||
|
@ -2061,10 +2061,7 @@ void hci_discovery_set_state(struct hci_dev *hdev, int state)
|
||||
* count, it is important to actually free the allocated
|
||||
* list of UUIDs here.
|
||||
*/
|
||||
hdev->discovery.rssi = HCI_RSSI_INVALID;
|
||||
hdev->discovery.uuid_count = 0;
|
||||
kfree(hdev->discovery.uuids);
|
||||
hdev->discovery.uuids = NULL;
|
||||
hci_discovery_filter_clear(hdev);
|
||||
|
||||
if (old_state != DISCOVERY_STARTING)
|
||||
mgmt_discovering(hdev, 0);
|
||||
|
Loading…
Reference in New Issue
Block a user