From: Andre Guedes Date: Tue, 6 Mar 2012 22:37:06 +0000 (-0300) Subject: Bluetooth: Check FINDING state in interleaved discovery X-Git-Tag: next-20120402~35^2~49 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=74e05692c9599866d5c8743764544cf77cd1af87;p=karo-tx-linux.git Bluetooth: Check FINDING state in interleaved discovery In order to do interleaved discovery we should be in DISCOVERY_ FINDING state. Otherwise, discovery should be stopped. Signed-off-by: Andre Guedes Signed-off-by: Gustavo F. Padovan --- diff --git a/net/bluetooth/hci_event.c b/net/bluetooth/hci_event.c index a0140b95cbeb..66ffe459e170 100644 --- a/net/bluetooth/hci_event.c +++ b/net/bluetooth/hci_event.c @@ -1099,7 +1099,8 @@ static void hci_cc_le_set_scan_enable(struct hci_dev *hdev, schedule_delayed_work(&hdev->adv_work, ADV_CLEAR_TIMEOUT); - if (hdev->discovery.type == DISCOV_TYPE_INTERLEAVED) { + if (hdev->discovery.type == DISCOV_TYPE_INTERLEAVED && + hdev->discovery.state == DISCOVERY_FINDING) { mgmt_interleaved_discovery(hdev); } else { hci_dev_lock(hdev);