[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 14/14] usb-host: fix splitted transfers
From: |
Gerd Hoffmann |
Subject: |
[Qemu-devel] [PATCH 14/14] usb-host: fix splitted transfers |
Date: |
Fri, 16 Nov 2012 14:44:47 +0100 |
USBPacket->actual_length wasn't updated correctly for USBPackets
splitted into multiple urbs. Fix it.
Signed-off-by: Gerd Hoffmann <address@hidden>
---
hw/usb/host-linux.c | 7 +++++--
1 files changed, 5 insertions(+), 2 deletions(-)
diff --git a/hw/usb/host-linux.c b/hw/usb/host-linux.c
index e3d394f..aa77b77 100644
--- a/hw/usb/host-linux.c
+++ b/hw/usb/host-linux.c
@@ -366,8 +366,11 @@ static void async_complete(void *opaque)
if (p) {
switch (aurb->urb.status) {
case 0:
- p->actual_length = aurb->urb.actual_length;
- p->status = USB_RET_SUCCESS; /* Clear previous ASYNC status */
+ p->actual_length += aurb->urb.actual_length;
+ if (!aurb->more) {
+ /* Clear previous ASYNC status */
+ p->status = USB_RET_SUCCESS;
+ }
break;
case -EPIPE:
--
1.7.1
- [Qemu-devel] [PULL for-1.3 00/14] usb patch queue, Gerd Hoffmann, 2012/11/16
- [Qemu-devel] [PATCH 03/14] usb-host: scan for usb devices when the vm starts, Gerd Hoffmann, 2012/11/16
- [Qemu-devel] [PATCH 01/14] fix live migration, Gerd Hoffmann, 2012/11/16
- [Qemu-devel] [PATCH 06/14] ehci: Fixup q->qtdaddr after cancelling an already completed packet, Gerd Hoffmann, 2012/11/16
- [Qemu-devel] [PATCH 05/14] ehci: Don't access packet after freeing it, Gerd Hoffmann, 2012/11/16
- [Qemu-devel] [PATCH 09/14] ehci: keep the frame timer running in case the guest asked for frame list rollover interrupts, Gerd Hoffmann, 2012/11/16
- [Qemu-devel] [PATCH 07/14] ehci: Better detection for qtd-s linked in circles, Gerd Hoffmann, 2012/11/16
- [Qemu-devel] [PATCH 12/14] usb-redir: Set default debug level to warning, Gerd Hoffmann, 2012/11/16
- [Qemu-devel] [PATCH 13/14] usb-host: update tracing, Gerd Hoffmann, 2012/11/16
- [Qemu-devel] [PATCH 11/14] usb-redir: Only add actually in flight packets to the in flight queue, Gerd Hoffmann, 2012/11/16
- [Qemu-devel] [PATCH 14/14] usb-host: fix splitted transfers,
Gerd Hoffmann <=
- [Qemu-devel] [PATCH 04/14] usb: host-linux: Ignore parsing errors of the device descriptors, Gerd Hoffmann, 2012/11/16
- [Qemu-devel] [PATCH 10/14] ehci: handle dma errors, Gerd Hoffmann, 2012/11/16
- [Qemu-devel] [PATCH 02/14] usb: Fix (another) bug in usb_packet_map() for IOMMU handling, Gerd Hoffmann, 2012/11/16
- [Qemu-devel] [PATCH 08/14] ehci: Don't verify the next pointer for periodic qh-s and qtd-s, Gerd Hoffmann, 2012/11/16