Bluetooth: Fix calls to __hci_cmd_sync()

Remove test of command reply status as it is already performed by
__hci_cmd_sync().

__hci_cmd_sync_ev() function already returns an error if it got a
non-zero status either through a Command Complete or a Command
Status event.

For both of these events the status is collected up in the event
handlers called by hci_event_packet() and then passed as the second
parameter to req_complete_skb(). The req_complete_skb() callback in
turn is hci_req_sync_complete() for __hci_cmd_sync_ev() which stores
the status in hdev->req_result. The hdev->req_result is then further
converted through bt_to_errno() back in __hci_cmd_sync_ev().

Signed-off-by: Frederic Danis <frederic.danis@linux.intel.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
This commit is contained in:
Frederic Danis 2015-05-15 11:58:39 +02:00 committed by Marcel Holtmann
parent db33c77ddd
commit cffd2eedf9

View File

@ -94,7 +94,6 @@ static ssize_t dut_mode_write(struct file *file, const char __user *user_buf,
char buf[32]; char buf[32];
size_t buf_size = min(count, (sizeof(buf)-1)); size_t buf_size = min(count, (sizeof(buf)-1));
bool enable; bool enable;
int err;
if (!test_bit(HCI_UP, &hdev->flags)) if (!test_bit(HCI_UP, &hdev->flags))
return -ENETDOWN; return -ENETDOWN;
@ -121,12 +120,8 @@ static ssize_t dut_mode_write(struct file *file, const char __user *user_buf,
if (IS_ERR(skb)) if (IS_ERR(skb))
return PTR_ERR(skb); return PTR_ERR(skb);
err = -bt_to_errno(skb->data[0]);
kfree_skb(skb); kfree_skb(skb);
if (err < 0)
return err;
hci_dev_change_flag(hdev, HCI_DUT_MODE); hci_dev_change_flag(hdev, HCI_DUT_MODE);
return count; return count;