USB passthrough fails under libvirt 6.9.0, restored by downgrade to 6.6.0
Host: Void Linux (5.8.18_1 kernel)
Guest: macOS Catalina (10.15.7)
qemu-x86_64 version: 5.1.0
After upgrading to libvirt 6.9.0, the macOS guest still successfully boots, but USB-passthrough devices (wired keyboard and generic USB Bluetooth dongle for mouse) no longer respond.
In this case, the USB-passthrough devices still appear in the macOS IORegistry, but don't function.
Downgrading to solely the libvirt package to 6.6.0 (I don't have ready access to older 6.7.0 or 6.8.0 packages, as they were never installed on this system) restores mouse and keyboard function.
I don't find anything noteworthy in /var/log/libvirt/qemu/<guestname>.log
, except confirmation that the qemu version did not change at the time libvirt 6.9.0 was installed.
Googling this issue, I've found a similar-sounding Reddit thread which points to a related Gentoo thread; in those cases, however, the host OS is Windows 10.
I'm happy to gather whatever additional information might be of help.
Edit: Interestingly, I see libvirt 6.6.0 is generating USB passthrough arguments like this:
-device usb-host,hostbus=9,hostaddr=3...
And those generated by libvirt 6.9.0 use this form:
-device usb-host,hostdevice=/dev/bus/usb/010/003...
Edit 2: Another observation: I just discovered that even the EFI-based bootloader (Clover, based on rEFIt) doesn't see keyboard activity, so things have gone wrong even before macOS starts to load.