KVM: selftests: Restore assert for non-nested VMs in access tracking test
authorSean Christopherson <seanjc@google.com>
Tue, 29 Nov 2022 17:53:00 +0000 (17:53 +0000)
committerSean Christopherson <seanjc@google.com>
Thu, 1 Dec 2022 23:31:39 +0000 (15:31 -0800)
commit8fcee0421386344b58fdc1cd5940219617037968
tree9f116a56fa602a707c402cd0579e224e1fa0bec2
parenta33004e844e4c60da86ecf8c249aab7179817fce
KVM: selftests: Restore assert for non-nested VMs in access tracking test

Restore the assert (on x86-64) that <10% of pages are still idle when NOT
running as a nested VM in the access tracking test.  The original assert
was converted to a "warning" to avoid false failures when running the
test in a VM, but the non-nested case does not suffer from the same
"infinite TLB size" issue.

Using the HYPERVISOR flag isn't infallible as VMMs aren't strictly
required to enumerate the "feature" in CPUID, but practically speaking
anyone that is running KVM selftests in VMs is going to be using a VMM
and hypervisor that sets the HYPERVISOR flag.

Cc: David Matlack <dmatlack@google.com>
Reviewed-by: Emanuele Giuseppe Esposito <eesposit@redhat.com>
Signed-off-by: Sean Christopherson <seanjc@google.com>
Link: https://lore.kernel.org/r/20221129175300.4052283-3-seanjc@google.com
tools/testing/selftests/kvm/access_tracking_perf_test.c
tools/testing/selftests/kvm/include/x86_64/processor.h