linux/tools/testing/selftests/kvm
Paolo Bonzini 129c48cde6 KVM: selftests: restore special vmmcall code layout needed by the harness
Commit 8fda37cf3d ("KVM: selftests: Stuff RAX/RCX with 'safe' values
in vmmcall()/vmcall()", 2022-11-21) broke the svm_nested_soft_inject_test
because it placed a "pop rbp" instruction after vmmcall.  While this is
correct and mimics what is done in the VMX case, this particular test
expects a ud2 instruction right after the vmmcall, so that it can skip
over it in the L1 part of the test.

Inline a suitably-modified version of vmmcall() to restore the
functionality of the test.

Fixes: 8fda37cf3d ("KVM: selftests: Stuff RAX/RCX with 'safe' values in vmmcall()/vmcall()"
Cc: Vitaly Kuznetsov <vkuznets@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Reviewed-by: Sean Christopherson <seanjc@google.com>
Reviewed-by: Vitaly Kuznetsov <vkuznets@redhat.com>
Reviewed-by: Maxim Levitsky <mlevitsk@redhat.com>
Message-Id: <20221130181147.9911-1-pbonzini@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2022-12-28 07:18:01 -05:00
..
aarch64 KVM: selftests: Define literal to asm constraint in aarch64 as unsigned long 2022-12-27 06:00:45 -05:00
include Merge remote-tracking branch 'kvm/queue' into HEAD 2022-12-12 15:54:07 -05:00
lib KVM: selftests: Mark correct page as mapped in virt_map() 2022-12-27 06:00:50 -05:00
s390x KVM: selftests: move common startup logic to kvm_util.c 2022-11-16 16:58:56 -08:00
x86_64 KVM: selftests: restore special vmmcall code layout needed by the harness 2022-12-28 07:18:01 -05:00
.gitignore KVM: selftests: Use pattern matching in .gitignore 2022-12-27 06:00:46 -05:00
access_tracking_perf_test.c Merge remote-tracking branch 'kvm/queue' into HEAD 2022-12-12 15:54:07 -05:00
config selftests: kvm: Adding config fragments 2019-08-09 16:52:38 +02:00
demand_paging_test.c KVM/arm64 updates for 6.2 2022-12-09 09:12:12 +01:00
dirty_log_perf_test.c KVM: selftests: Fix spelling mistake "probabalistic" -> "probabilistic" 2022-12-02 13:23:55 -05:00
dirty_log_test.c Merge remote-tracking branch 'kvm/queue' into HEAD 2022-12-12 15:54:07 -05: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 now-unnecessary ucall_uninit() 2022-11-16 16:58:53 -08:00
Makefile KVM: selftests: Disable "gnu-variable-sized-type-not-at-end" warning 2022-12-27 06:00:48 -05:00
max_guest_memory_test.c KVM: selftests: Add atoi_positive() and atoi_non_negative() for input validation 2022-11-16 10:03:24 -08:00
memslot_modification_stress_test.c KVM/arm64 updates for 6.2 2022-12-09 09:12:12 +01:00
memslot_perf_test.c KVM: selftests: Fix divide-by-zero bug in memslot_perf_test 2022-12-27 06:00:46 -05:00
rseq_test.c KVM: selftests: move common startup logic to kvm_util.c 2022-11-16 16:58:56 -08:00
set_memory_region_test.c KVM: selftests: move common startup logic to kvm_util.c 2022-11-16 16:58:56 -08:00
settings selftests: kvm: Raise the default timeout to 120 seconds 2021-02-09 08:17:08 -05:00
steal_time.c KVM: selftests: Automatically do init_ucall() for non-barebones VMs 2022-11-16 16:58:51 -08:00
system_counter_offset_test.c KVM: selftests: Automatically do init_ucall() for non-barebones VMs 2022-11-16 16:58:51 -08:00