Reviewed-by: Joao Martins <joao.m.mart...@oracle.com> Signed-off-by: Liran Alon <liran.a...@oracle.com> --- target/i386/cpu.h | 5 +++++ target/i386/kvm.c | 2 ++ 2 files changed, 7 insertions(+)
diff --git a/target/i386/cpu.h b/target/i386/cpu.h index 93345792f4cb..cdb0e43676a9 100644 --- a/target/i386/cpu.h +++ b/target/i386/cpu.h @@ -1867,6 +1867,11 @@ static inline bool cpu_has_vmx(CPUX86State *env) return env->features[FEAT_1_ECX] & CPUID_EXT_VMX; } +static inline bool cpu_has_svm(CPUX86State *env) +{ + return env->features[FEAT_8000_0001_ECX] & CPUID_EXT3_SVM; +} + /* fpu_helper.c */ void update_fp_status(CPUX86State *env); void update_mxcsr_status(CPUX86State *env); diff --git a/target/i386/kvm.c b/target/i386/kvm.c index b57f873ec9e8..4e2c8652168f 100644 --- a/target/i386/kvm.c +++ b/target/i386/kvm.c @@ -1721,6 +1721,8 @@ int kvm_arch_init_vcpu(CPUState *cs) env->nested_state->format = KVM_STATE_NESTED_FORMAT_VMX; vmx_hdr->vmxon_pa = -1ull; vmx_hdr->vmcs12_pa = -1ull; + } else if (cpu_has_svm(env)) { + env->nested_state->format = KVM_STATE_NESTED_FORMAT_SVM; } } -- 2.20.1