OSDN Git Service

Bluetooth: Remove return value from hci_send_frame() function
authorMarcel Holtmann <marcel@holtmann.org>
Thu, 10 Oct 2013 21:54:19 +0000 (14:54 -0700)
committerJohan Hedberg <johan.hedberg@intel.com>
Thu, 10 Oct 2013 22:19:44 +0000 (00:19 +0200)
The return value of hci_send_frame() is never checked. So just make
this function void and print an error when the hdev->send driver
callback returns a negative value.

Having the error printed is actually an improvement over the
current situation where any driver error just gets ignored.

Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
net/bluetooth/hci_core.c

index 47cf3a9..6cc2f86 100644 (file)
@@ -2697,7 +2697,7 @@ int hci_unregister_cb(struct hci_cb *cb)
 }
 EXPORT_SYMBOL(hci_unregister_cb);
 
-static int hci_send_frame(struct hci_dev *hdev, struct sk_buff *skb)
+static void hci_send_frame(struct hci_dev *hdev, struct sk_buff *skb)
 {
        BT_DBG("%s type %d len %d", hdev->name, bt_cb(skb)->pkt_type, skb->len);
 
@@ -2717,7 +2717,8 @@ static int hci_send_frame(struct hci_dev *hdev, struct sk_buff *skb)
 
        skb->dev = (void *) hdev;
 
-       return hdev->send(skb);
+       if (hdev->send(skb) < 0)
+               BT_ERR("%s sending frame failed", hdev->name);
 }
 
 void hci_req_init(struct hci_request *req, struct hci_dev *hdev)