device: 0.783 graphic: 0.757 performance: 0.666 network: 0.661 architecture: 0.608 files: 0.600 semantic: 0.550 mistranslation: 0.546 socket: 0.543 i386: 0.476 vnc: 0.467 register: 0.463 PID: 0.442 peripherals: 0.402 x86: 0.384 boot: 0.324 ppc: 0.287 user-level: 0.277 TCG: 0.273 permissions: 0.269 VMM: 0.260 risc-v: 0.259 kernel: 0.238 debug: 0.227 KVM: 0.212 arm: 0.197 hypervisor: 0.095 assembly: 0.080 virtual: 0.055 [OHCI] OHCI_CC_DEVICENOTRESPONDING not set when transferring to a disconnected device Description of problem: If a USB device is disconnected and is cleaned up by qemu, subsequent transfers to that device address are ignored. On a real OHCI controller `OHCI_CC_DEVICENOTRESPONDING` bit is set and is reported as an error to the host. qemu attempts to set it here https://github.com/qemu/qemu/blob/ffd454c67e38cc6df792733ebc5d967eee28ac0d/hw/usb/hcd-ohci.c#L795 which would work fine on a valid device handle. However this check https://github.com/qemu/qemu/blob/ffd454c67e38cc6df792733ebc5d967eee28ac0d/hw/usb/hcd-ohci.c#L975 leaves early if no device handle is found so the error code is never set. Fix is to set `OHCI_CC_DEVICENOTRESPONDING` if `ohci_find_device` fails before returning.