Now that the eventfd's waitqueue ensures it has at most one priority
waiter, i.e. prevents KVM from binding multiple irqfds to one eventfd,
drop KVM's sanity check that eventfds are unique for a single VM.

Signed-off-by: Sean Christopherson <sea...@google.com>
---
 virt/kvm/eventfd.c | 11 -----------
 1 file changed, 11 deletions(-)

diff --git a/virt/kvm/eventfd.c b/virt/kvm/eventfd.c
index 7b2e1f858f6d..d5258fd16033 100644
--- a/virt/kvm/eventfd.c
+++ b/virt/kvm/eventfd.c
@@ -288,7 +288,6 @@ static void kvm_irqfd_register(struct file *file, 
wait_queue_head_t *wqh,
 {
        struct kvm_irqfd_pt *p = container_of(pt, struct kvm_irqfd_pt, pt);
        struct kvm_kernel_irqfd *irqfd = p->irqfd;
-       struct kvm_kernel_irqfd *tmp;
        struct kvm *kvm = p->kvm;
 
        /*
@@ -328,16 +327,6 @@ static void kvm_irqfd_register(struct file *file, 
wait_queue_head_t *wqh,
        if (p->ret)
                goto out;
 
-       list_for_each_entry(tmp, &kvm->irqfds.items, list) {
-               if (irqfd->eventfd != tmp->eventfd)
-                       continue;
-
-               WARN_ON_ONCE(1);
-               /* This fd is used for another irq already. */
-               p->ret = -EBUSY;
-               goto out;
-       }
-
        list_add_tail(&irqfd->list, &kvm->irqfds.items);
 
 out:
-- 
2.49.0.1151.ga128411c76-goog


Reply via email to