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@xxxxxxxxxx> >>> Signed-off-by: Manali Shukla <manali.shukla@xxxxxxx> >> 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