summaryrefslogtreecommitdiffstats
path: root/hw/usb/hcd-xhci.c
diff options
context:
space:
mode:
authorPeter Maydell2022-07-19 18:40:36 +0200
committerPeter Maydell2022-07-19 18:40:36 +0200
commitd48125de38f48a61d6423ef6a01156d6dff9ee2c (patch)
treef1555f3565dcb7f00a4ba7a6b581700516b720a6 /hw/usb/hcd-xhci.c
parentMerge tag 'pull-request-2022-07-19' of https://gitlab.com/thuth/qemu into sta... (diff)
parentgtk: Add show_tabs=on|off command line option. (diff)
downloadqemu-d48125de38f48a61d6423ef6a01156d6dff9ee2c.tar.gz
qemu-d48125de38f48a61d6423ef6a01156d6dff9ee2c.tar.xz
qemu-d48125de38f48a61d6423ef6a01156d6dff9ee2c.zip
Merge tag 'kraxel-20220719-pull-request' of https://gitlab.com/kraxel/qemu into staging
ui: dbus-display fix, new gtk config options. usb: xhci fix, doc updates. microvm: no pcie io reservations. # gpg: Signature made Tue 19 Jul 2022 16:21:06 BST # gpg: using RSA key A0328CFFB93A17A79901FE7D4CB6D8EED3E87138 # gpg: Good signature from "Gerd Hoffmann (work) <kraxel@redhat.com>" [full] # gpg: aka "Gerd Hoffmann <gerd@kraxel.org>" [full] # gpg: aka "Gerd Hoffmann (private) <kraxel@gmail.com>" [full] # Primary key fingerprint: A032 8CFF B93A 17A7 9901 FE7D 4CB6 D8EE D3E8 7138 * tag 'kraxel-20220719-pull-request' of https://gitlab.com/kraxel/qemu: gtk: Add show_tabs=on|off command line option. usb: document pcap (aka usb traffic capture) usb: document guest-reset and guest-reset-all usb/hcd-xhci: check slotid in xhci_wakeup_endpoint() microvm: turn off io reservations for pcie root ports dbus-display: fix test race when initializing p2p connection Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'hw/usb/hcd-xhci.c')
-rw-r--r--hw/usb/hcd-xhci.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/hw/usb/hcd-xhci.c b/hw/usb/hcd-xhci.c
index 0cd0a5e540..296cc6c8e6 100644
--- a/hw/usb/hcd-xhci.c
+++ b/hw/usb/hcd-xhci.c
@@ -3269,7 +3269,8 @@ static void xhci_wakeup_endpoint(USBBus *bus, USBEndpoint *ep,
DPRINTF("%s\n", __func__);
slotid = ep->dev->addr;
- if (slotid == 0 || !xhci->slots[slotid-1].enabled) {
+ if (slotid == 0 || slotid > xhci->numslots ||
+ !xhci->slots[slotid - 1].enabled) {
DPRINTF("%s: oops, no slot for dev %d\n", __func__, ep->dev->addr);
return;
}