projects
/
qemu.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
0fb3e29
)
ehci: schedule async bh on async packet completion
author
Gerd Hoffmann
<kraxel@redhat.com>
Fri, 11 May 2012 09:31:56 +0000
(11:31 +0200)
committer
Gerd Hoffmann
<kraxel@redhat.com>
Thu, 7 Jun 2012 08:02:22 +0000
(10:02 +0200)
When a packet completes which happens to be part of the async schedule
kick the async bottom half for processing,
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
hw/usb/hcd-ehci.c
patch
|
blob
|
history
diff --git
a/hw/usb/hcd-ehci.c
b/hw/usb/hcd-ehci.c
index 16627d35c0873235322d4031b6e735b79c2ce780..8b2dfeda561321cb3b0f6aea70b45bad5c1602c5 100644
(file)
--- a/
hw/usb/hcd-ehci.c
+++ b/
hw/usb/hcd-ehci.c
@@
-1327,6
+1327,10
@@
static void ehci_async_complete_packet(USBPort *port, USBPacket *packet)
assert(p->async == EHCI_ASYNC_INFLIGHT);
p->async = EHCI_ASYNC_FINISHED;
p->usb_status = packet->result;
+
+ if (p->queue->async) {
+ qemu_bh_schedule(p->queue->ehci->async_bh);
+ }
}
static void ehci_execute_complete(EHCIQueue *q)