]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
KVM: x86/mmu: Drop kvm_page_fault.hva, i.e. don't track intermediate hva
authorSean Christopherson <seanjc@google.com>
Thu, 10 Oct 2024 18:23:19 +0000 (11:23 -0700)
committerPaolo Bonzini <pbonzini@redhat.com>
Fri, 25 Oct 2024 16:57:58 +0000 (12:57 -0400)
Remove kvm_page_fault.hva as it is never read, only written.  This will
allow removing the @hva param from __gfn_to_pfn_memslot().

Tested-by: Alex Bennée <alex.bennee@linaro.org>
Signed-off-by: Sean Christopherson <seanjc@google.com>
Tested-by: Dmitry Osipenko <dmitry.osipenko@collabora.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Message-ID: <20241010182427.1434605-18-seanjc@google.com>

arch/x86/kvm/mmu/mmu.c
arch/x86/kvm/mmu/mmu_internal.h

index cae81209f9ed160d99dddb18a9d216e54287a73a..d4e21071b78e99f60aafccdf446e0ff71ccaada4 100644 (file)
@@ -3301,7 +3301,6 @@ static int kvm_handle_noslot_fault(struct kvm_vcpu *vcpu,
        fault->slot = NULL;
        fault->pfn = KVM_PFN_NOSLOT;
        fault->map_writable = false;
-       fault->hva = KVM_HVA_ERR_BAD;
 
        /*
         * If MMIO caching is disabled, emulate immediately without
@@ -4386,7 +4385,7 @@ static int __kvm_faultin_pfn(struct kvm_vcpu *vcpu, struct kvm_page_fault *fault
 
        fault->pfn = __gfn_to_pfn_memslot(fault->slot, fault->gfn, false, true,
                                          fault->write, &fault->map_writable,
-                                         &fault->hva);
+                                         NULL);
 
        /*
         * If resolving the page failed because I/O is needed to fault-in the
@@ -4415,7 +4414,7 @@ static int __kvm_faultin_pfn(struct kvm_vcpu *vcpu, struct kvm_page_fault *fault
         */
        fault->pfn = __gfn_to_pfn_memslot(fault->slot, fault->gfn, true, true,
                                          fault->write, &fault->map_writable,
-                                         &fault->hva);
+                                         NULL);
        return RET_PF_CONTINUE;
 }
 
index 4da83544c4e1b89cd796f37b30daa803b1f79e90..633aedec3c2e3cad4d4b9a098f90d56466dcf148 100644 (file)
@@ -238,7 +238,6 @@ struct kvm_page_fault {
        /* Outputs of kvm_faultin_pfn.  */
        unsigned long mmu_seq;
        kvm_pfn_t pfn;
-       hva_t hva;
        bool map_writable;
 
        /*
@@ -313,7 +312,6 @@ static inline int kvm_mmu_do_page_fault(struct kvm_vcpu *vcpu, gpa_t cr2_or_gpa,
                .is_private = err & PFERR_PRIVATE_ACCESS,
 
                .pfn = KVM_PFN_ERR_FAULT,
-               .hva = KVM_HVA_ERR_BAD,
        };
        int r;