aboutsummaryrefslogtreecommitdiff
path: root/drivers/bluetooth
diff options
context:
space:
mode:
authorTomas Winkler <tomas.winkler@intel.com>2008-11-30 12:17:18 +0100
committerGreg Kroah-Hartman <gregkh@suse.de>2009-02-20 14:36:56 -0800
commit0338cfe915f96ff15f1c2902ee19f9ee3c41478d (patch)
tree467c85d2898c207f1af5ee9ef35b09289a1ae906 /drivers/bluetooth
parent466909ba06d0bfd5423cd5ca9bea22e43384377e (diff)
Bluetooth: Fix TX error path in btsdio driver
commit 7644d63d1348ec044ccd8f775fefe5eb7cbcac69 upstream. This patch fixes accumulating of the header in case packet was requeued in the error path. Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: Marcel Holtmann <marcel@holtmann.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/bluetooth')
-rw-r--r--drivers/bluetooth/btsdio.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/bluetooth/btsdio.c b/drivers/bluetooth/btsdio.c
index 58630cc1eff..c422e897c3b 100644
--- a/drivers/bluetooth/btsdio.c
+++ b/drivers/bluetooth/btsdio.c
@@ -91,6 +91,7 @@ static int btsdio_tx_packet(struct btsdio_data *data, struct sk_buff *skb)
err = sdio_writesb(data->func, REG_TDAT, skb->data, skb->len);
if (err < 0) {
+ skb_pull(skb, 4);
sdio_writeb(data->func, 0x01, REG_PC_WRT, NULL);
return err;
}