linux/tools/testing/selftests/kvm
Gavin Shan 05c2224d4b KVM: selftests: Fix number of pages for memory slot in memslot_modification_stress_test
It's required by vm_userspace_mem_region_add() that memory size
should be aligned to host page size. However, one guest page is
provided by memslot_modification_stress_test. It triggers failure
in the scenario of 64KB-page-size-host and 4KB-page-size-guest,
as the following messages indicate.

 # ./memslot_modification_stress_test
 Testing guest mode: PA-bits:40,  VA-bits:48,  4K pages
 guest physical test memory: [0xffbfff0000, 0xffffff0000)
 Finished creating vCPUs
 Started all vCPUs
 ==== Test Assertion Failure ====
   lib/kvm_util.c:824: vm_adjust_num_guest_pages(vm->mode, npages) == npages
   pid=5712 tid=5712 errno=0 - Success
      1	0x0000000000404eeb: vm_userspace_mem_region_add at kvm_util.c:822
      2	0x0000000000401a5b: add_remove_memslot at memslot_modification_stress_test.c:82
      3	 (inlined by) run_test at memslot_modification_stress_test.c:110
      4	0x0000000000402417: for_each_guest_mode at guest_modes.c:100
      5	0x00000000004016a7: main at memslot_modification_stress_test.c:187
      6	0x0000ffffb8cd4383: ?? ??:0
      7	0x0000000000401827: _start at :?
   Number of guest pages is not compatible with the host. Try npages=16

Fix the issue by providing 16 guest pages to the memory slot for this
particular combination of 64KB-page-size-host and 4KB-page-size-guest
on aarch64.

Fixes: ef4c9f4f65 ("KVM: selftests: Fix 32-bit truncation of vm_get_max_gfn()")
Signed-off-by: Gavin Shan <gshan@redhat.com>
Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20221013063020.201856-1-gshan@redhat.com
2022-10-13 11:46:51 +01:00
..
aarch64 KVM: arm64: selftests: Fix multiple versions of GIC creation 2022-10-10 09:41:39 +01:00
include KVM: selftests: Verify VMX MSRs can be restored to KVM-supported values 2022-07-28 13:25:24 -04:00
lib KVM: selftests: dirty-log: Use KVM_CAP_DIRTY_LOG_RING_ACQ_REL if available 2022-09-29 10:23:08 +01:00
s390x KVM: selftests: Fix filename reporting in guest asserts 2022-07-13 18:14:08 -07:00
x86_64 KVM: selftests: Test all possible "invalid" PERF_CAPABILITIES.LBR_FMT vals 2022-08-10 15:08:29 -04:00
.gitignore KVM: selftests: Add test for AArch32 ID registers 2022-09-14 11:36:16 +01:00
access_tracking_perf_test.c KVM: selftests: Add TEST_REQUIRE macros to reduce skipping copy+paste 2022-06-11 11:47:29 -04:00
config selftests: kvm: Adding config fragments 2019-08-09 16:52:38 +02:00
demand_paging_test.c KVM: selftests: Purge vm+vcpu_id == vcpu silliness 2022-06-11 11:47:22 -04:00
dirty_log_perf_test.c KVM: selftests: Add an option to run vCPUs while disabling dirty logging 2022-07-28 13:22:24 -04:00
dirty_log_test.c KVM: selftests: dirty-log: Use KVM_CAP_DIRTY_LOG_RING_ACQ_REL if available 2022-09-29 10:23:08 +01:00
hardware_disable_test.c KVM: selftests: Move per-VM/per-vCPU nr pages calculation to __vm_create() 2022-06-11 11:47:26 -04:00
kvm_binary_stats_test.c selftests: KVM: Add exponent check for boolean stats 2022-08-01 08:01:23 -04:00
kvm_create_max_vcpus.c KVM: selftests: Add TEST_REQUIRE macros to reduce skipping copy+paste 2022-06-11 11:47:29 -04:00
kvm_page_table_test.c KVM: selftests: Drop @num_percpu_pages from __vm_create_with_vcpus() 2022-06-11 11:47:25 -04:00
Makefile KVM: selftests: Add test for AArch32 ID registers 2022-09-14 11:36:16 +01:00
max_guest_memory_test.c KVM: selftests: Open code and drop 'struct kvm_vm' accessors 2022-06-11 11:47:24 -04:00
memslot_modification_stress_test.c KVM: selftests: Fix number of pages for memory slot in memslot_modification_stress_test 2022-10-13 11:46:51 +01:00
memslot_perf_test.c KVM: selftests: Fix filename reporting in guest asserts 2022-07-13 18:14:08 -07:00
rseq_test.c KVM: selftests: Use getcpu() instead of sched_getcpu() in rseq_test 2022-08-10 15:08:29 -04:00
set_memory_region_test.c KVM: selftests: Fix filename reporting in guest asserts 2022-07-13 18:14:08 -07:00
settings selftests: kvm: Raise the default timeout to 120 seconds 2021-02-09 08:17:08 -05:00
steal_time.c KVM: selftests: Use kvm_cpu_has() for KVM's PV steal time 2022-07-13 18:14:13 -07:00
system_counter_offset_test.c KVM: selftests: Fix filename reporting in guest asserts 2022-07-13 18:14:08 -07:00