diff options
-rw-r--r-- | net/bluetooth/hci_event.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/net/bluetooth/hci_event.c b/net/bluetooth/hci_event.c index 0c393fbae6e9..2388f2c09887 100644 --- a/net/bluetooth/hci_event.c +++ b/net/bluetooth/hci_event.c | |||
@@ -3964,8 +3964,12 @@ static void check_pending_le_conn(struct hci_dev *hdev, bdaddr_t *addr, | |||
3964 | static void process_adv_report(struct hci_dev *hdev, u8 type, bdaddr_t *bdaddr, | 3964 | static void process_adv_report(struct hci_dev *hdev, u8 type, bdaddr_t *bdaddr, |
3965 | u8 bdaddr_type, s8 rssi, u8 *data, u8 len) | 3965 | u8 bdaddr_type, s8 rssi, u8 *data, u8 len) |
3966 | { | 3966 | { |
3967 | if (type == LE_ADV_IND || type == LE_ADV_DIRECT_IND) | 3967 | /* Passive scanning shouldn't trigger any device found events */ |
3968 | check_pending_le_conn(hdev, bdaddr, bdaddr_type); | 3968 | if (hdev->le_scan_type == LE_SCAN_PASSIVE) { |
3969 | if (type == LE_ADV_IND || type == LE_ADV_DIRECT_IND) | ||
3970 | check_pending_le_conn(hdev, bdaddr, bdaddr_type); | ||
3971 | return; | ||
3972 | } | ||
3969 | 3973 | ||
3970 | mgmt_device_found(hdev, bdaddr, LE_LINK, bdaddr_type, NULL, rssi, 0, 1, | 3974 | mgmt_device_found(hdev, bdaddr, LE_LINK, bdaddr_type, NULL, rssi, 0, 1, |
3971 | data, len); | 3975 | data, len); |