]> git.baikalelectronics.ru Git - kernel.git/commitdiff
KVM: x86/mmu: Fix typo and tweak comment for split_desc_cache capacity
authorSean Christopherson <seanjc@google.com>
Tue, 12 Jul 2022 02:07:24 +0000 (02:07 +0000)
committerPaolo Bonzini <pbonzini@redhat.com>
Thu, 14 Jul 2022 15:31:25 +0000 (11:31 -0400)
Remove a spurious closing paranthesis and tweak the comment about the
cache capacity for PTE descriptors (rmaps) eager page splitting to tone
down the assertion slightly, and to call out that topup requires dropping
mmu_lock, which is the real motivation for avoiding topup (as opposed to
memory usage).

Cc: David Matlack <dmatlack@google.com>
Signed-off-by: Sean Christopherson <seanjc@google.com>
Message-Id: <20220712020724.1262121-4-seanjc@google.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
arch/x86/kvm/mmu/mmu.c

index 7a65e57b9b415b9e6d17abd4f952065f582fc9e1..52664c3caaab9b0700bc1385394fb50b7ceea079 100644 (file)
@@ -6125,14 +6125,15 @@ static int topup_split_caches(struct kvm *kvm)
 {
        /*
         * Allocating rmap list entries when splitting huge pages for nested
-        * MMUs is uncommon as KVM needs to allocate if and only if there is
+        * MMUs is uncommon as KVM needs to use a list if and only if there is
         * more than one rmap entry for a gfn, i.e. requires an L1 gfn to be
-        * aliased by multiple L2 gfns.  Aliasing gfns when using TDP is very
-        * atypical for VMMs; a few gfns are often aliased during boot, e.g.
-        * when remapping firmware, but aliasing rarely occurs post-boot).  If
-        * there is only one rmap entry, rmap->val points directly at that one
-        * entry and doesn't need to allocate a list.  Buffer the cache by the
-        * default capacity so that KVM doesn't have to topup the cache if it
+        * aliased by multiple L2 gfns and/or from multiple nested roots with
+        * different roles.  Aliasing gfns when using TDP is atypical for VMMs;
+        * a few gfns are often aliased during boot, e.g. when remapping BIOS,
+        * but aliasing rarely occurs post-boot or for many gfns.  If there is
+        * only one rmap entry, rmap->val points directly at that one entry and
+        * doesn't need to allocate a list.  Buffer the cache by the default
+        * capacity so that KVM doesn't have to drop mmu_lock to topup if KVM
         * encounters an aliased gfn or two.
         */
        const int capacity = SPLIT_DESC_CACHE_MIN_NR_OBJECTS +