]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
KVM: SVM: WARN if updating IRTE GA fields in IOMMU fails
authorSean Christopherson <seanjc@google.com>
Wed, 11 Jun 2025 22:45:51 +0000 (15:45 -0700)
committerSean Christopherson <seanjc@google.com>
Mon, 23 Jun 2025 16:50:43 +0000 (09:50 -0700)
WARN if updating GA information for an IRTE entry fails as modifying an
IRTE should only fail if KVM is buggy, e.g. has stale metadata, and
because returning an error that is always ignored is pointless.

Link: https://lore.kernel.org/r/20250611224604.313496-50-seanjc@google.com
Signed-off-by: Sean Christopherson <seanjc@google.com>
arch/x86/kvm/svm/avic.c

index 6ecbd7984975c2dd961b6ce0a187b0987438f840..eaf793a281277ccfea3b68c9c3b3a060540fed11 100644 (file)
@@ -835,9 +835,8 @@ int avic_pi_update_irte(struct kvm_kernel_irqfd *irqfd, struct kvm *kvm,
        return irq_set_vcpu_affinity(host_irq, NULL);
 }
 
-static inline int avic_update_iommu_vcpu_affinity(struct kvm_vcpu *vcpu, int cpu)
+static void avic_update_iommu_vcpu_affinity(struct kvm_vcpu *vcpu, int cpu)
 {
-       int ret = 0;
        struct vcpu_svm *svm = to_svm(vcpu);
        struct kvm_kernel_irqfd *irqfd;
 
@@ -848,12 +847,10 @@ static inline int avic_update_iommu_vcpu_affinity(struct kvm_vcpu *vcpu, int cpu
         * interrupt remapping table entry targeting this vcpu.
         */
        if (list_empty(&svm->ir_list))
-               return 0;
+               return;
 
        list_for_each_entry(irqfd, &svm->ir_list, vcpu_list)
-               ret = amd_iommu_update_ga(cpu, irqfd->irq_bypass_data);
-
-       return ret;
+               WARN_ON_ONCE(amd_iommu_update_ga(cpu, irqfd->irq_bypass_data));
 }
 
 void avic_vcpu_load(struct kvm_vcpu *vcpu, int cpu)