]> git.baikalelectronics.ru Git - kernel.git/commitdiff
KVM: x86/mmu: Refactor shadow walk in __direct_map() to reduce indentation
authorSean Christopherson <sean.j.christopherson@intel.com>
Fri, 2 Jul 2021 22:04:50 +0000 (15:04 -0700)
committerPaolo Bonzini <pbonzini@redhat.com>
Mon, 2 Aug 2021 13:36:37 +0000 (09:36 -0400)
Employ a 'continue' to reduce the indentation for linking a new shadow
page during __direct_map() in preparation for linking private pages.

Signed-off-by: Sean Christopherson <sean.j.christopherson@intel.com>
Signed-off-by: Isaku Yamahata <isaku.yamahata@intel.com>
Reviewed-by: Paolo Bonzini <pbonzini@redhat.com>
Message-Id: <702419686d5700373123f6ea84e7a946c2cad8b4.1625186503.git.isaku.yamahata@intel.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
arch/x86/kvm/mmu/mmu.c

index ce1d955a05362546f9197b40d0d52541b6018576..85c70492f86376c77e6b2ea3ab24c872f7e78b03 100644 (file)
@@ -2939,15 +2939,16 @@ static int __direct_map(struct kvm_vcpu *vcpu, gpa_t gpa, u32 error_code,
                        break;
 
                drop_large_spte(vcpu, it.sptep);
-               if (!is_shadow_present_pte(*it.sptep)) {
-                       sp = kvm_mmu_get_page(vcpu, base_gfn, it.addr,
-                                             it.level - 1, true, ACC_ALL);
-
-                       link_shadow_page(vcpu, it.sptep, sp);
-                       if (is_tdp && huge_page_disallowed &&
-                           req_level >= it.level)
-                               account_huge_nx_page(vcpu->kvm, sp);
-               }
+               if (is_shadow_present_pte(*it.sptep))
+                       continue;
+
+               sp = kvm_mmu_get_page(vcpu, base_gfn, it.addr,
+                                     it.level - 1, true, ACC_ALL);
+
+               link_shadow_page(vcpu, it.sptep, sp);
+               if (is_tdp && huge_page_disallowed &&
+                   req_level >= it.level)
+                       account_huge_nx_page(vcpu->kvm, sp);
        }
 
        ret = mmu_set_spte(vcpu, it.sptep, ACC_ALL,