aboutsummaryrefslogtreecommitdiffstats
path: root/include/net/bluetooth
diff options
context:
space:
mode:
authorSimon Fels <simon.fels@canonical.com>2015-09-02 12:10:12 +0200
committerMarcel Holtmann <marcel@holtmann.org>2015-09-17 13:20:02 +0200
commit6b3cc1db68ac83647d37f7d16f0261621eda24aa (patch)
tree65ecf00f7779f21157abbe0ada09f5b5427e3e35 /include/net/bluetooth
parentBluetooth: hci_intel: Show error in case of invalid LPM packet size (diff)
downloadlinux-dev-6b3cc1db68ac83647d37f7d16f0261621eda24aa.tar.xz
linux-dev-6b3cc1db68ac83647d37f7d16f0261621eda24aa.zip
Bluetooth: close HCI device when user channel socket gets closed
With 9380f9eacfbbee701daa416edd6625efcd3e29e1 the order of unsetting the HCI_USER_CHANNEL flag of the HCI device was reverted to ensure the device is first closed before making it available again. Due to hci_dev_close checking for HCI_USER_CHANNEL being set on the device it was never really closed and was kept opened. We're now calling hci_dev_do_close directly to make sure the device is correctly closed and we keep the correct order to unset the flag on our device object. Signed-off-by: Simon Fels <simon.fels@canonical.com> Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
Diffstat (limited to 'include/net/bluetooth')
-rw-r--r--include/net/bluetooth/hci_core.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/include/net/bluetooth/hci_core.h b/include/net/bluetooth/hci_core.h
index 9e1a59e01fa2..256e6734c1fb 100644
--- a/include/net/bluetooth/hci_core.h
+++ b/include/net/bluetooth/hci_core.h
@@ -987,6 +987,7 @@ int hci_resume_dev(struct hci_dev *hdev);
int hci_reset_dev(struct hci_dev *hdev);
int hci_dev_open(__u16 dev);
int hci_dev_close(__u16 dev);
+int hci_dev_do_close(struct hci_dev *hdev);
int hci_dev_reset(__u16 dev);
int hci_dev_reset_stat(__u16 dev);
int hci_dev_cmd(unsigned int cmd, void __user *arg);