xhci: fix guest-triggerable assert

Set xhci into error state instead of throwing a core dump.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Message-id: 20180702162752.29233-1-kraxel@redhat.com
This commit is contained in:
Gerd Hoffmann 2018-07-02 18:27:52 +02:00
parent 8bb01b257f
commit 8f36ec7088

View File

@ -1954,7 +1954,12 @@ static void xhci_kick_epctx(XHCIEPContext *epctx, unsigned int streamid)
for (i = 0; i < length; i++) { for (i = 0; i < length; i++) {
TRBType type; TRBType type;
type = xhci_ring_fetch(xhci, ring, &xfer->trbs[i], NULL); type = xhci_ring_fetch(xhci, ring, &xfer->trbs[i], NULL);
assert(type); if (!type) {
xhci_die(xhci);
xhci_ep_free_xfer(xfer);
epctx->kick_active--;
return;
}
} }
xfer->streamid = streamid; xfer->streamid = streamid;