Bluetooth: Clear LE white list when resetting controller
Subsystems (2)
Marcel Holtmann
maintainerPATCH 1/1 Bluetooth: Clear LE white list when resetting controller
The internal representation of the LE white list needs to be cleared when receiving a successful HCI_Reset command. A reset of the controller is expected to start with an empty LE white list.
When the LE white list is not cleared on controller reset, the passive background scanning might skip programming the remote devices. Only changes to the LE white list are programmed when passive background is started.
--- net/bluetooth/hci_event.c | 2 ++ 1 file changed, 2 insertions(+)
net/bluetooth/hci_event.c +2 -0
@@ -205,6 +205,8 @@ static void hci_cc_reset(struct hci_dev *hdev, struct sk_buff *skb) hdev->le_scan_type =LE_SCAN_PASSIVE ; hdev->ssp_debug_mode =0 ; + +hci_bdaddr_list_clear (&hdev->le_white_list); }static void hci_cc_write_local_name (struct hci_dev *hdev,struct sk_buff *skb)
Signature · 1 line
1.9.3
Johan Hedberg
AppliedHi Marcel,
Quoted 9 lines · Marcel Holtmann
The internal representation of the LE white list needs to be cleared when receiving a successful
HCI_Resetcommand. A reset of the controller is expected to start with an empty LE white list.When the LE white list is not cleared on controller reset, the passive background scanning might skip programming the remote devices. Only changes to the LE white list are programmed when passive background is started.
Quoted 5 lines
Signed-off-by Marcel Holtmann <[email protected]>Cc [email protected] # 3.17.x--- net/bluetooth/hci_event.c | 2 ++ 1 file changed, 2 insertions(+)
Applied to bluetooth-next. Thanks.
Johan