static void ivshmem_enable_irqfd(IVShmemState *s) { PCIDevice *pdev = PCI_DEVICE(s); int i; for (i = 0; i < s->peers[s->vm_id].nb_eventfds; i++) { ivshmem_add_kvm_msi_virq(s, i); } if (msix_set_vector_notifiers(pdev, ivshmem_vector_unmask, ivshmem_vector_mask, ivshmem_vector_poll)) { error_report("ivshmem: msix_set_vector_notifiers failed"); } }
static void ivshmem_enable_irqfd(IVShmemState *s) { PCIDevice *pdev = PCI_DEVICE(s); int i; for (i = 0; i < s->peers[s->vm_id].nb_eventfds; i++) { Error *err = NULL; ivshmem_add_kvm_msi_virq(s, i, &err); if (err) { error_report_err(err); /* TODO do we need to handle the error? */ } } if (msix_set_vector_notifiers(pdev, ivshmem_vector_unmask, ivshmem_vector_mask, ivshmem_vector_poll)) { error_report("ivshmem: msix_set_vector_notifiers failed"); } }