Recently I noticed that when I configure a virtio-scsi-pci device using an iothread, as soon as the guest virtio-scsi driver loads, the iothread spins at 100%:
-object iothread,id=iothread1 -device virtio-scsi-pci,iothread=iothread1 This occurs whether or not a disk is attached, with either poll-max-ns=0 or poll-max-ns=32768, and with Linux 3.13, 4.1 and 4.4 guests. The iothread stops spinning as soon as the guest driver is unloaded. I bisected the issue to commit 684e508c23d28af8d6ed2c62738a0f60447c8274: aio: add .io_poll_begin/end() callbacks It doesn't seem to affect performance, but obviously consuming CPU cycles when there's no disk attached is undesirable. Is this an expected side effect of implementing iothread polling? Is there a way to revert to the old non-polling behavior? --Ed