Bluetooth: Fix clearing persistent flags
There are several other dev_flags besided HCI_MGMT that should not be
cleared upon reset.
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
Acked-by: Marcel Holtmann <marcel@holtmann.org>
diff --git a/net/bluetooth/hci_event.c b/net/bluetooth/hci_event.c
index 42d6352..54132a9 100644
--- a/net/bluetooth/hci_event.c
+++ b/net/bluetooth/hci_event.c
@@ -195,8 +195,8 @@
hci_req_complete(hdev, HCI_OP_RESET, status);
- /* Reset all flags, except persistent ones like HCI_MGMT */
- hdev->dev_flags &= BIT(HCI_MGMT);
+ /* Reset all flags, except persistent ones */
+ hdev->dev_flags &= BIT(HCI_MGMT) | BIT(HCI_SETUP) | BIT(HCI_AUTO_OFF);
}
static void hci_cc_write_local_name(struct hci_dev *hdev, struct sk_buff *skb)