From: Johan Hedberg Date: Sat, 19 Oct 2013 20:38:19 +0000 (+0300) Subject: Bluetooth: Fix updating settings when there are no HCI commands to send X-Git-Tag: firefly_0821_release~176^2~4570^2~3^2^2~307^2~13 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=a81070ba3743400444275cc87f8f91bb5b67dd4b;p=firefly-linux-kernel-4.4.55.git Bluetooth: Fix updating settings when there are no HCI commands to send It is possible that the Set Connectable management command doesn't cause any HCI commands to send (such as when BR/EDR is disabled). We can't just send a response to user space in this case but must also update the necessary device flags and settings. This patch fixes the issue by using the recently introduced set_connectable_update_settings function. Signed-off-by: Johan Hedberg Signed-off-by: Marcel Holtmann --- diff --git a/net/bluetooth/mgmt.c b/net/bluetooth/mgmt.c index b74a157bde09..51d0446bc4ed 100644 --- a/net/bluetooth/mgmt.c +++ b/net/bluetooth/mgmt.c @@ -1483,8 +1483,8 @@ static int set_connectable(struct sock *sk, struct hci_dev *hdev, void *data, if (err < 0) { mgmt_pending_remove(cmd); if (err == -ENODATA) - err = send_settings_rsp(sk, MGMT_OP_SET_CONNECTABLE, - hdev); + err = set_connectable_update_settings(hdev, sk, + cp->val); goto failed; }