mirror of
https://gitlab.com/qemu-project/qemu
synced 2024-09-20 11:11:33 +00:00
5f77e06baa
pid can be gotten from uhci device memory in uhci_handle_td(), so the guest can trigger assert qemu if we get an invalid pid. And the uhci spec 2.1.2 tells us The Host Controller sets Host Controller Process Error bit to 1 when it detects a fatal error and indicates that the Host Controller suffered a consistency check failure while processing a Transfer Descriptor. An example of a consistency check failure would be finding an illegal PID field while processing the packet header portion of the TD. When this error occurs, the Host Controller clears the Run/Stop bit in the Command register to prevent further schedule execution. We'd better to set UHCI_STS_HCPERR and kick an interrupt, check the pid value at the first of uhci_handle_td function. https://bugzilla.redhat.com/show_bug.cgi?id=1070027 Signed-off-by: Gonglei <arei.gonglei@huawei.com> Message-id: 1455867238-4720-1-git-send-email-arei.gonglei@huawei.com [ applied minor codestyle fix ] Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> |
||
---|---|---|
.. | ||
bus.c | ||
ccid-card-emulated.c | ||
ccid-card-passthru.c | ||
ccid.h | ||
combined-packet.c | ||
core.c | ||
desc-msos.c | ||
desc.c | ||
desc.h | ||
dev-audio.c | ||
dev-bluetooth.c | ||
dev-hid.c | ||
dev-hub.c | ||
dev-mtp.c | ||
dev-network.c | ||
dev-serial.c | ||
dev-smartcard-reader.c | ||
dev-storage.c | ||
dev-uas.c | ||
dev-wacom.c | ||
hcd-ehci-pci.c | ||
hcd-ehci-sysbus.c | ||
hcd-ehci.c | ||
hcd-ehci.h | ||
hcd-musb.c | ||
hcd-ohci.c | ||
hcd-uhci.c | ||
hcd-xhci.c | ||
host-legacy.c | ||
host-libusb.c | ||
host-stub.c | ||
host.h | ||
libhw.c | ||
Makefile.objs | ||
quirks-ftdi-ids.h | ||
quirks-pl2303-ids.h | ||
quirks.c | ||
quirks.h | ||
redirect.c | ||
tusb6010.c |