OSDN Git Service

KVM: VMX: Move vpid_sync_vcpu_addr() down a few lines
authorSean Christopherson <sean.j.christopherson@intel.com>
Fri, 20 Mar 2020 21:28:06 +0000 (14:28 -0700)
committerPaolo Bonzini <pbonzini@redhat.com>
Mon, 20 Apr 2020 21:26:07 +0000 (17:26 -0400)
Move vpid_sync_vcpu_addr() below vpid_sync_context() so that it can be
refactored in a future patch to call vpid_sync_context() directly when
the "individual address" INVVPID variant isn't supported.

No functional change intended.

Reviewed-by: Miaohe Lin <linmiaohe@huawei.com>
Reviewed-by: Vitaly Kuznetsov <vkuznets@redhat.com>
Reviewed-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Sean Christopherson <sean.j.christopherson@intel.com>
Message-Id: <20200320212833.3507-11-sean.j.christopherson@intel.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
arch/x86/kvm/vmx/ops.h

index a1cb6d4..6e7ceb0 100644 (file)
@@ -268,19 +268,6 @@ static inline void __invept(unsigned long ext, u64 eptp, gpa_t gpa)
        vmx_asm2(invept, "r"(ext), "m"(operand), ext, eptp, gpa);
 }
 
-static inline bool vpid_sync_vcpu_addr(int vpid, gva_t addr)
-{
-       if (vpid == 0)
-               return true;
-
-       if (cpu_has_vmx_invvpid_individual_addr()) {
-               __invvpid(VMX_VPID_EXTENT_INDIVIDUAL_ADDR, vpid, addr);
-               return true;
-       }
-
-       return false;
-}
-
 static inline void vpid_sync_vcpu_single(int vpid)
 {
        if (vpid == 0)
@@ -304,6 +291,19 @@ static inline void vpid_sync_context(int vpid)
                vpid_sync_vcpu_global();
 }
 
+static inline bool vpid_sync_vcpu_addr(int vpid, gva_t addr)
+{
+       if (vpid == 0)
+               return true;
+
+       if (cpu_has_vmx_invvpid_individual_addr()) {
+               __invvpid(VMX_VPID_EXTENT_INDIVIDUAL_ADDR, vpid, addr);
+               return true;
+       }
+
+       return false;
+}
+
 static inline void ept_sync_global(void)
 {
        __invept(VMX_EPT_EXTENT_GLOBAL, 0, 0);