diff mbox

[22/25] xhci: stop on errors

Message ID 1327330511-16307-23-git-send-email-kraxel@redhat.com
State New
Headers show

Commit Message

Gerd Hoffmann Jan. 23, 2012, 2:55 p.m. UTC
When some error happened we'll have to stop processing the endpoint.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
---
 hw/usb-xhci.c |    8 ++++++--
 1 files changed, 6 insertions(+), 2 deletions(-)
diff mbox

Patch

diff --git a/hw/usb-xhci.c b/hw/usb-xhci.c
index 3cd5374..1e8836f 100644
--- a/hw/usb-xhci.c
+++ b/hw/usb-xhci.c
@@ -1719,10 +1719,14 @@  static void xhci_kick_ep(XHCIState *xhci, unsigned int slotid, unsigned int epid
             }
         }
 
+        if (epctx->state == EP_HALTED) {
+            DPRINTF("xhci: ep halted, stopping schedule\n");
+            break;
+        }
+
         /*
          * Qemu usb can't handle multiple in-flight xfers.
-         * Also xfers might be finished here already,
-         * possibly with an error.  Stop here for now.
+         * Stop here for now.
          */
         break;
     }