Message ID | 20241003234337.273364-7-seanjc@google.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | KVM: selftests: AVX support + fixes | expand |
Sean Christopherson <seanjc@google.com> writes: > Now that KVM selftests enable all supported XCR0 features by default, add > a testcase to the XCR0 vs. CPUID test to verify that the guest can disable > everything except the legacy FPU in XCR0, and then re-enable the full > feature set, which is kinda sorta what the test did before XCR0 was setup > by default. > > Signed-off-by: Sean Christopherson <seanjc@google.com> > --- > tools/testing/selftests/kvm/x86_64/xcr0_cpuid_test.c | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/tools/testing/selftests/kvm/x86_64/xcr0_cpuid_test.c b/tools/testing/selftests/kvm/x86_64/xcr0_cpuid_test.c > index a4aecdc77da5..c8a5c5e51661 100644 > --- a/tools/testing/selftests/kvm/x86_64/xcr0_cpuid_test.c > +++ b/tools/testing/selftests/kvm/x86_64/xcr0_cpuid_test.c > @@ -79,6 +79,11 @@ static void guest_code(void) > ASSERT_ALL_OR_NONE_XFEATURE(supported_xcr0, > XFEATURE_MASK_XTILE); > > + vector = xsetbv_safe(0, XFEATURE_MASK_FP); > + __GUEST_ASSERT(!vector, > + "Expected success on XSETBV(FP), got vector '0x%x'", > + vector); > + > vector = xsetbv_safe(0, supported_xcr0); > __GUEST_ASSERT(!vector, > "Expected success on XSETBV(0x%lx), got vector '0x%x'", Reviewed-by: Vitaly Kuznetsov <vkuznets@redhat.com>
diff --git a/tools/testing/selftests/kvm/x86_64/xcr0_cpuid_test.c b/tools/testing/selftests/kvm/x86_64/xcr0_cpuid_test.c index a4aecdc77da5..c8a5c5e51661 100644 --- a/tools/testing/selftests/kvm/x86_64/xcr0_cpuid_test.c +++ b/tools/testing/selftests/kvm/x86_64/xcr0_cpuid_test.c @@ -79,6 +79,11 @@ static void guest_code(void) ASSERT_ALL_OR_NONE_XFEATURE(supported_xcr0, XFEATURE_MASK_XTILE); + vector = xsetbv_safe(0, XFEATURE_MASK_FP); + __GUEST_ASSERT(!vector, + "Expected success on XSETBV(FP), got vector '0x%x'", + vector); + vector = xsetbv_safe(0, supported_xcr0); __GUEST_ASSERT(!vector, "Expected success on XSETBV(0x%lx), got vector '0x%x'",
Now that KVM selftests enable all supported XCR0 features by default, add a testcase to the XCR0 vs. CPUID test to verify that the guest can disable everything except the legacy FPU in XCR0, and then re-enable the full feature set, which is kinda sorta what the test did before XCR0 was setup by default. Signed-off-by: Sean Christopherson <seanjc@google.com> --- tools/testing/selftests/kvm/x86_64/xcr0_cpuid_test.c | 5 +++++ 1 file changed, 5 insertions(+)