KVM: selftests: do not substitute SVM/VMX check with KVM_CAP_NESTED_STATE check
[linux-2.6-microblaze.git] / tools / testing / selftests / kvm / x86_64 / state_test.c
index d43b6f9..f6c8b90 100644 (file)
@@ -171,16 +171,17 @@ int main(int argc, char *argv[])
        vcpu_regs_get(vm, VCPU_ID, &regs1);
 
        if (kvm_check_cap(KVM_CAP_NESTED_STATE)) {
-               if (kvm_get_supported_cpuid_entry(0x80000001)->ecx & CPUID_SVM)
+               if (nested_svm_supported())
                        vcpu_alloc_svm(vm, &nested_gva);
-               else
+               else if (nested_vmx_supported())
                        vcpu_alloc_vmx(vm, &nested_gva);
-               vcpu_args_set(vm, VCPU_ID, 1, nested_gva);
-       } else {
-               pr_info("will skip nested state checks\n");
-               vcpu_args_set(vm, VCPU_ID, 1, 0);
        }
 
+       if (!nested_gva)
+               pr_info("will skip nested state checks\n");
+
+       vcpu_args_set(vm, VCPU_ID, 1, nested_gva);
+
        for (stage = 1;; stage++) {
                _vcpu_run(vm, VCPU_ID);
                TEST_ASSERT(run->exit_reason == KVM_EXIT_IO,