Hello people! I'm not able to boot any guest that sets a virtio block device like: (branch master)
[PPC64] qemu-system-ppc64 -cpu POWER8 -nographic -vga none -m 4G -M pseries,accel=kvm,kvm-type=PR -drive file=disk.qcow2,if=virtio QEMU Starting Build Date = Dec 18 2017 13:08:00 FW Version = git-fa981320a1e0968d Press "s" to enter Open Firmware. Populating /vdevice methods Populating /vdevice/vty@71000000 Populating /vdevice/nvram@71000001 Populating /vdevice/v-scsi@71000002 SCSI: Looking for devices 8200000000000000 CD-ROM : "QEMU QEMU CD-ROM 2.5+" Populating /pci@800000020000000 00 0000 (D) : 1af4 1000 virtio [ net ] Aborted [x86] qemu-system-x86_64 -m 4G -enable-kvm -drive file=util.qcow2,if=virtio Running QEMU with GTK 2.x is deprecated, and will be removed in a future release. Please switch to GTK 3.x instead [1] 5282 abort [Cause] The commit 4fe6d78b2e introduces the ... kvm_mem_ioeventfd_del(...) { ... r = kvm_set_ioeventfd_mmio(fd, ... if (r < 0) { abort(); } + if (e->cleanup) { + e->cleanup(e); + } } For some reason, not yet clear to me, cleanup() calls the same kvm_mem_ioeventfd_del again and again until kvm_set_ioeventfd_mmio returns < 0 and abort(). I was going to send a patch to revert that 'if ()' but I think it could cause a regression. What do you guys think? Thanks, Jose Ricardo Ziviani