diff options
author | Marcel Holtmann <marcel@holtmann.org> | 2014-02-17 09:21:18 -0800 |
---|---|---|
committer | Johan Hedberg <johan.hedberg@intel.com> | 2014-02-17 19:48:24 +0200 |
commit | c6521401d668538784e27d5746e7035fcf1107a8 (patch) | |
tree | 0fd93b9cac6f8427f6d8de5cd9845aa9627186cb /net/bluetooth/hci_sock.c | |
parent | 0fe442ff854b7bf93e57c7f3964b05a6438de3db (diff) | |
download | linux-c6521401d668538784e27d5746e7035fcf1107a8.tar.gz linux-c6521401d668538784e27d5746e7035fcf1107a8.tar.bz2 linux-c6521401d668538784e27d5746e7035fcf1107a8.zip |
Bluetooth: Add missing index added event on user channel failure
When the setup of user channel fails, the index added event is not sent
and will cause issues with user interaction. This problem can be easily
triggered with a LE only controller without a public address. In that
case hci_dev_open() fails and that error case is not sending an event
saying that the controller is available for normal use again.
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
Diffstat (limited to 'net/bluetooth/hci_sock.c')
-rw-r--r-- | net/bluetooth/hci_sock.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/net/bluetooth/hci_sock.c b/net/bluetooth/hci_sock.c index 7552f9e3089c..68e51a84e72d 100644 --- a/net/bluetooth/hci_sock.c +++ b/net/bluetooth/hci_sock.c @@ -716,6 +716,7 @@ static int hci_sock_bind(struct socket *sock, struct sockaddr *addr, err = hci_dev_open(hdev->id); if (err) { clear_bit(HCI_USER_CHANNEL, &hdev->dev_flags); + mgmt_index_added(hdev); hci_dev_put(hdev); goto done; } |