For some reason, one of them stubbornly refused to boot off a USB thumb drive. In both cases I had no problem adding the USB device in virtmanager. It appears normally, in the list of bootable devices. I can enable it as a bootable device and set it to be the first in the boot order. So far so good.
Both qemu hosts behave identically in this fashion. But one of them completely ignores the USB device when booting it.
And after the guest (Win 10) finishes booting off its usual "IDE disk", the guest sees the USB thumb drive without any issues. I can move the same thumb drive to the other host, go through the same steps, and the guest boots off the same thumb drive just fine.
After comparing the two hosts I discovered that the problematic one had its USB Controller showing as a "USB 3" controller type, in virt-manager. I changed it to "USB 2", and this fixed everything. The thumb drive showed up in the boot menu, and I can now boot off it.
I captured the qemu command line, for both configurations, and diffed it. Here are the only differences in the command line options to qemu:
--- qemu3 2020-02-03 19:59:14.512674308 -0500 +++ qemu2 2020-02-03 20:00:13.044800981 -0500 @@ -5,7 +5,7 @@ guest=WINDOWS10,debug-threads=on -S -object -secret,id=masterKey0,format=raw,file=/var/lib/libvirt/qemu/domain-3-WINDOWS10/master-key.aes +secret,id=masterKey0,format=raw,file=/var/lib/libvirt/qemu/domain-4-WINDOWS10/master-key.aes -machine pc-i440fx-1.4,accel=kvm,usb=off,dump-guest-core=off -cpu @@ -30,7 +30,13 @@ -boot menu=on,strict=on -device -qemu-xhci,p2=15,p3=15,id=usb,bus=pci.0,addr=0x6 +ich9-usb-ehci1,id=usb,bus=pci.0,addr=0x6.0x7 +-device +ich9-usb-uhci1,masterbus=usb.0,firstport=0,bus=pci.0,multifunction=on,addr=0x6 +-device +ich9-usb-uhci2,masterbus=usb.0,firstport=2,bus=pci.0,addr=0x6.0x1 +-device +ich9-usb-uhci3,masterbus=usb.0,firstport=4,bus=pci.0,addr=0x6.0x2 -device virtio-serial-pci,id=virtio-serial0,bus=pci.0,addr=0x7 -drive"-" is the non-working configuration with a USB 3 controller, and "+" is the working configuration with a USB 2 controller. I'm just curious as to what the underlying issue is, here.
pgpVIC8hX0XOY.pgp
Description: PGP signature