diff options
Diffstat (limited to 'virtio/net.c')
-rw-r--r-- | virtio/net.c | 9 |
1 files changed, 2 insertions, 7 deletions
diff --git a/virtio/net.c b/virtio/net.c index 419a5e30..f95258ca 100644 --- a/virtio/net.c +++ b/virtio/net.c @@ -602,23 +602,18 @@ static int init_vq(struct kvm *kvm, void *dev, u32 vq, u32 page_size, u32 align, static void notify_vq_gsi(struct kvm *kvm, void *dev, u32 vq, u32 gsi) { struct net_dev *ndev = dev; - struct kvm_irqfd irq; struct vhost_vring_file file; int r; if (ndev->vhost_fd == 0) return; - irq = (struct kvm_irqfd) { - .gsi = gsi, - .fd = eventfd(0, 0), - }; file = (struct vhost_vring_file) { .index = vq, - .fd = irq.fd, + .fd = eventfd(0, 0), }; - r = ioctl(kvm->vm_fd, KVM_IRQFD, &irq); + r = irq__add_irqfd(kvm, gsi, file.fd, -1); if (r < 0) die_perror("KVM_IRQFD failed"); |