From: Sean Christopherson Date: Wed, 11 Jun 2025 22:45:38 +0000 (-0700) Subject: KVM: x86: Skip IOMMU IRTE updates if there's no old or new vCPU being targeted X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=dc6adb13046abe199194f788e5d0dc41c67db5bc;p=thirdparty%2Fkernel%2Fstable.git KVM: x86: Skip IOMMU IRTE updates if there's no old or new vCPU being targeted Don't "reconfigure" an IRTE into host controlled mode when it's already in the state, i.e. if KVM's GSI routing changes but the IRQ wasn't and still isn't being posted to a vCPU. Link: https://lore.kernel.org/r/20250611224604.313496-37-seanjc@google.com Signed-off-by: Sean Christopherson --- diff --git a/arch/x86/kvm/irq.c b/arch/x86/kvm/irq.c index 5b3f721808d5..ecebd150c2f7 100644 --- a/arch/x86/kvm/irq.c +++ b/arch/x86/kvm/irq.c @@ -542,6 +542,9 @@ static int kvm_pi_update_irte(struct kvm_kernel_irqfd *irqfd, vcpu = NULL; } + if (!irqfd->irq_bypass_vcpu && !vcpu) + return 0; + r = kvm_x86_call(pi_update_irte)(irqfd, irqfd->kvm, host_irq, irqfd->gsi, vcpu, irq.vector); if (r) {