| From 7644d63d1348ec044ccd8f775fefe5eb7cbcac69 Mon Sep 17 00:00:00 2001 |
| From: Tomas Winkler <tomas.winkler@intel.com> |
| Date: Sun, 30 Nov 2008 12:17:18 +0100 |
| Subject: Bluetooth: Fix TX error path in btsdio driver |
| |
| From: Tomas Winkler <tomas.winkler@intel.com> |
| |
| 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> |
| |
| --- |
| drivers/bluetooth/btsdio.c | 1 + |
| 1 file changed, 1 insertion(+) |
| |
| --- a/drivers/bluetooth/btsdio.c |
| +++ b/drivers/bluetooth/btsdio.c |
| @@ -91,6 +91,7 @@ static int btsdio_tx_packet(struct btsdi |
| |
| 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; |
| } |