On Tue, Mar 13, 2012 at 10:42 AM, Amos Kong <akong@xxxxxxxxxx> wrote: > Boot up guest with 232 virtio-blk disk, qemu will abort for fail to > allocate ioeventfd. This patchset changes kvm_has_many_ioeventfds(), > and check if available ioeventfd exists. If not, virtio-pci will > fallback to userspace, and don't use ioeventfd for io notification. Please explain how it fails with 232 devices. Where does it abort and why? hw/virtio-pci.c:virtio_pci_start_ioeventfd() fails "gracefully" when virtio_pci_set_host_notifier_internal()'s event_notifier_init() call fails. (This might be because we've hit our file descriptor rlimit.) Perhaps the problem is that we've exceeded the kvm.ko io device limit? I guess that is now handled by the new memory region API and we need to handle failure gracefully there too. Either way, I don't think that using kvm_has_many_ioeventfds() is the right answer. Stefan -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html