On 4/1/2024 10:58 AM, Manali Shukla wrote:
Hi Muhammad Usama Anjum,
Thank you for reviewing my patch.
On 3/30/2024 1:43 AM, Muhammad Usama Anjum wrote:
On 3/27/24 10:42 AM, Manali Shukla wrote:
By default, HLT instruction executed by guest is intercepted by hypervisor. However, KVM_CAP_X86_DISABLE_EXITS capability can be used to not intercept HLT by setting KVM_X86_DISABLE_EXITS_HLT.
Add a test case to test KVM_X86_DISABLE_EXITS_HLT functionality.
Suggested-by: Sean Christopherson seanjc@google.com Signed-off-by: Manali Shukla manali.shukla@amd.com
Thank you for the new test patch. We have been trying to ensure TAP conformance for tests which cannot be achieved if new tests aren't using TAP already. Please make your test TAP compliant.
As per my understanding about TAP interface, kvm_test_harness.h file includes a MACRO, which is used to create VM with one vcpu using vm_create_with_one_vcpu(), but halt_disable_exit_test creates a customized VM with KVM_CAP_X86_DISABLE_EXITS capability set and different vm_shape parameters to start a VM without in-kernel APIC support. AFAIU, I won't be able to use KVM_ONE_VCPU_TEST_SUITE MACRO as is. How do you suggest to proceed with this issue?
tools/testing/selftests/kvm/Makefile | 1 + .../kvm/x86_64/halt_disable_exit_test.c | 113 ++++++++++++++++++
Add generated object to .gitignore file.
Sure. I will do it.
I think adding of generated object to .gitignore is not needed because /tools/testing/selftests/kvm/.gitignore uses pattern matching to exclude everything except .c, .h, .S, and .sh files from Git, which was committed via below commit.
commit 43e96957e8b87bad8e4ba666750ff0cda9e03ffb KVM: selftests: Use pattern matching in .gitignore
2 files changed, 114 insertions(+)
create mode 100644 tools/testing/selftests/kvm/x86_64/halt_disable_exit_test.c
diff --git a/tools/testing/selftests/kvm/Makefile b/tools/testing/selftests/kvm/Makefile index c75251d5c97c..9f72abb95d2e 100644 --- a/tools/testing/selftests/kvm/Makefile +++ b/tools/testing/selftests/kvm/Makefile @@ -89,6 +89,7 @@ TEST_GEN_PROGS_x86_64 += x86_64/set_sregs_test TEST_GEN_PROGS_x86_64 += x86_64/smaller_maxphyaddr_emulation_test TEST_GEN_PROGS_x86_64 += x86_64/smm_test TEST_GEN_PROGS_x86_64 += x86_64/state_test +TEST_GEN_PROGS_x86_64 += x86_64/halt_disable_exit_test TEST_GEN_PROGS_x86_64 += x86_64/vmx_preemption_timer_test TEST_GEN_PROGS_x86_64 += x86_64/svm_vmcall_test TEST_GEN_PROGS_x86_64 += x86_64/svm_int_ctl_test diff --git a/tools/testing/selftests/kvm/x86_64/halt_disable_exit_test.c b/tools/testing/selftests/kvm/x86_64/halt_disable_exit_test.c new file mode 100644 index 000000000000..b7279dd0eaff --- /dev/null