Hi, > What I also so in the trace is that the USB core apparently stumbled as > a request that took very long too complete finally returned, and then > the assertion triggered over this request.
Can I get such a trace please? usb_host_req_* and usb_host_urb_* enabled should show all interesting information. Oh, and replacing the assert which triggers with a tracepoint (or just a fprintf in case you use the stderr tracer) would be nice, so I can see how qemu continues after the assert(). A request taking a while shouldn't be a issue. Requests for a specific endpoint shouldn't be reordered though, and this seems to happen here. thanks, Gerd