summaryrefslogtreecommitdiffstats
path: root/net/bluetooth
diff options
context:
space:
mode:
authorJohan Hedberg2018-11-27 10:37:46 +0100
committerGreg Kroah-Hartman2019-01-26 09:32:44 +0100
commit7557895b3dda70aa17636da8310f5662448867ae (patch)
tree334a8c5104a1a5b09c2aef9c525a4221a40d638a /net/bluetooth
parentiwlwifi: mvm: Send LQ command as async when necessary (diff)
downloadkernel-qcow2-linux-7557895b3dda70aa17636da8310f5662448867ae.tar.gz
kernel-qcow2-linux-7557895b3dda70aa17636da8310f5662448867ae.tar.xz
kernel-qcow2-linux-7557895b3dda70aa17636da8310f5662448867ae.zip
Bluetooth: Fix unnecessary error message for HCI request completion
commit 1629db9c75342325868243d6bca5853017d91cf8 upstream. In case a command which completes in Command Status was sent using the hci_cmd_send-family of APIs there would be a misleading error in the hci_get_cmd_complete function, since the code would be trying to fetch the Command Complete parameters when there are none. Avoid the misleading error and silently bail out from the function in case the received event is a command status. Signed-off-by: Johan Hedberg <johan.hedberg@intel.com> Acked-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com> Signed-off-by: Marcel Holtmann <marcel@holtmann.org> Tested-by Adam Ford <aford173@gmail.com> #4.19.16 Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'net/bluetooth')
-rw-r--r--net/bluetooth/hci_event.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/net/bluetooth/hci_event.c b/net/bluetooth/hci_event.c
index f12555f23a49..7f800c3480f7 100644
--- a/net/bluetooth/hci_event.c
+++ b/net/bluetooth/hci_event.c
@@ -5668,6 +5668,12 @@ static bool hci_get_cmd_complete(struct hci_dev *hdev, u16 opcode,
return true;
}
+ /* Check if request ended in Command Status - no way to retreive
+ * any extra parameters in this case.
+ */
+ if (hdr->evt == HCI_EV_CMD_STATUS)
+ return false;
+
if (hdr->evt != HCI_EV_CMD_COMPLETE) {
bt_dev_err(hdev, "last event is not cmd complete (0x%2.2x)",
hdr->evt);