diff options
author | Marcel Holtmann <marcel@holtmann.org> | 2014-11-02 01:45:58 (GMT) |
---|---|---|
committer | Johan Hedberg <johan.hedberg@intel.com> | 2014-11-02 07:58:50 (GMT) |
commit | 8761f9d6620b0be6b08f21807568fbbfcbb128d2 (patch) | |
tree | 846ace1a19d0059ea2a39a750a1a08cebfbab300 | |
parent | 62906710182a7d079a69932a93ebd003caaa7135 (diff) | |
download | linux-8761f9d6620b0be6b08f21807568fbbfcbb128d2.tar.xz |
Bluetooth: Check status of command complete for HCI_Reset
When the HCI_Reset command returns, the status needs to be checked. It
is unlikely that HCI_Reset actually fails, but when it fails, it is a
bad idea to reset all values since the controller will have not reset
its values in that case.
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
-rw-r--r-- | net/bluetooth/hci_event.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/net/bluetooth/hci_event.c b/net/bluetooth/hci_event.c index aa15214..3dd2550 100644 --- a/net/bluetooth/hci_event.c +++ b/net/bluetooth/hci_event.c @@ -189,6 +189,9 @@ static void hci_cc_reset(struct hci_dev *hdev, struct sk_buff *skb) clear_bit(HCI_RESET, &hdev->flags); + if (status) + return; + /* Reset all non-persistent flags */ hdev->dev_flags &= ~HCI_PERSISTENT_MASK; |