]> git.baikalelectronics.ru Git - kernel.git/commitdiff
KVM: selftests: Drop DEFAULT_GUEST_PHY_PAGES, open code the magic number
authorSean Christopherson <seanjc@google.com>
Tue, 3 May 2022 22:26:02 +0000 (15:26 -0700)
committerPaolo Bonzini <pbonzini@redhat.com>
Sat, 11 Jun 2022 15:47:27 +0000 (11:47 -0400)
Remove DEFAULT_GUEST_PHY_PAGES and open code the magic number (with a
comment) in vm_nr_pages_required().  Exposing DEFAULT_GUEST_PHY_PAGES to
tests was a symptom of the VM creation APIs not cleanly supporting tests
that create runnable vCPUs, but can't do so immediately.  Now that tests
don't have to manually compute the amount of memory needed for basic
operation, make it harder for tests to do things that should be handled
by the framework, i.e. force developers to improve the framework instead
of hacking around flaws in individual tests.

Signed-off-by: Sean Christopherson <seanjc@google.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
tools/testing/selftests/kvm/include/kvm_util_base.h
tools/testing/selftests/kvm/lib/kvm_util.c

index db9c00a7af4e5c7efc5f5f9a9edfb3f123a1fc93..1c762988ab9c1498bde4a3fe8a73a0a0a9c8d977 100644 (file)
@@ -100,7 +100,6 @@ memslot2region(struct kvm_vm *vm, uint32_t memslot);
 #define KVM_UTIL_MIN_VADDR             0x2000
 #define KVM_GUEST_PAGE_TABLE_MIN_PADDR 0x180000
 
-#define DEFAULT_GUEST_PHY_PAGES                512
 #define DEFAULT_GUEST_STACK_VADDR_MIN  0xab6000
 #define DEFAULT_STACK_PGS              5
 
index 620c355611224c8ec499b6dca53a9e39ee3a6cac..86e7f5afce631d04fb4de4995f146e3c7b84b161 100644 (file)
@@ -271,7 +271,13 @@ static uint64_t vm_nr_pages_required(enum vm_guest_mode mode,
                    "nr_vcpus = %d too large for host, max-vcpus = %d",
                    nr_runnable_vcpus, kvm_check_cap(KVM_CAP_MAX_VCPUS));
 
-       nr_pages = DEFAULT_GUEST_PHY_PAGES;
+       /*
+        * Arbitrarily allocate 512 pages (2mb when page size is 4kb) for the
+        * test code and other per-VM assets that will be loaded into memslot0.
+        */
+       nr_pages = 512;
+
+       /* Account for the per-vCPU stacks on behalf of the test. */
        nr_pages += nr_runnable_vcpus * DEFAULT_STACK_PGS;
 
        /*