]> www.infradead.org Git - users/jedix/linux-maple.git/commit
KVM: selftests: Relax assertion on HLT exits if CPU supports Idle HLT
authorSean Christopherson <seanjc@google.com>
Wed, 26 Feb 2025 23:18:09 +0000 (15:18 -0800)
committerSean Christopherson <seanjc@google.com>
Fri, 28 Feb 2025 23:42:28 +0000 (15:42 -0800)
commit62838fa5eade1b23d546e81e7aab6d4c92ec12f2
tree0a62cbb51af47193ccebd1c21e95a4cbade25902
parent75418e222e30440ed9aa6d57b6aba474bcd8b4f1
KVM: selftests: Relax assertion on HLT exits if CPU supports Idle HLT

If the CPU supports Idle HLT, which elides HLT VM-Exits if the vCPU has an
unmasked pending IRQ or NMI, relax the xAPIC IPI test's assertion on the
number of HLT exits to only require that the number of exits is less than
or equal to the number of HLT instructions that were executed.  I.e. don't
fail the test if Idle HLT does what it's supposed to do.

Note, unfortunately there's no way to determine if *KVM* supports Idle HLT,
as this_cpu_has() checks raw CPU support, and kvm_cpu_has() checks what can
be exposed to L1, i.e. the latter would check if KVM supports nested Idle
HLT.  But, since the assert is purely bonus coverage, checking for CPU
support is good enough.

Cc: Manali Shukla <Manali.Shukla@amd.com>
Tested-by: Manali Shukla <Manali.Shukla@amd.com>
Link: https://lore.kernel.org/r/20250226231809.3183093-1-seanjc@google.com
Signed-off-by: Sean Christopherson <seanjc@google.com>
tools/testing/selftests/kvm/include/x86/processor.h
tools/testing/selftests/kvm/x86/xapic_ipi_test.c