Commit b599d44a authored by Sean Christopherson's avatar Sean Christopherson
Browse files

KVM: Drop sanity check that per-VM list of irqfds is unique



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.

Tested-by: default avatarK Prateek Nayak <kprateek.nayak@amd.com>
Acked-by: default avatarPeter Zijlstra (Intel) <peterz@infradead.org>
Link: https://lore.kernel.org/r/20250522235223.3178519-11-seanjc@google.com


Signed-off-by: default avatarSean Christopherson <seanjc@google.com>
parent 2cdd64cb
Loading
Loading
Loading
Loading
+0 −11
Original line number Diff line number Diff line
@@ -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: