| Submitter | Igor Mammedov |
|---|---|
| Date | Aug. 10, 2012, 11:22 a.m. |
| Message ID | <1344597756-2890-5-git-send-email-imammedo@redhat.com> |
| Download | mbox | patch |
| Permalink | /patch/176448/ |
| State | New |
| Headers | show |
Comments
On Fri, Aug 10, 2012 at 01:22:20PM +0200, Igor Mammedov wrote: > Signed-off-by: Igor Mammedov <imammedo@redhat.com> Reviewed-by: Eduardo Habkost <ehabkost@redhat.com> > --- > target-i386/cpu.c | 24 +++++++++++++----------- > 1 file changed, 13 insertions(+), 11 deletions(-) > > diff --git a/target-i386/cpu.c b/target-i386/cpu.c > index 17e98e1..d0dec63 100644 > --- a/target-i386/cpu.c > +++ b/target-i386/cpu.c > @@ -1171,17 +1171,6 @@ int cpu_x86_register(X86CPU *cpu, const char *cpu_model) > env->cpuid_xlevel2 = def->xlevel2; > object_property_set_int(OBJECT(cpu), (int64_t)def->tsc_khz * 1000, > "tsc-frequency", &error); > - if (!kvm_enabled()) { > - env->cpuid_features &= TCG_FEATURES; > - env->cpuid_ext_features &= TCG_EXT_FEATURES; > - env->cpuid_ext2_features &= (TCG_EXT2_FEATURES > -#ifdef TARGET_X86_64 > - | CPUID_EXT2_SYSCALL | CPUID_EXT2_LM > -#endif > - ); > - env->cpuid_ext3_features &= TCG_EXT3_FEATURES; > - env->cpuid_svm_features &= TCG_SVM_FEATURES; > - } > object_property_set_str(OBJECT(cpu), def->model_id, "model-id", &error); > > out: > @@ -1745,6 +1734,19 @@ static void mce_init(X86CPU *cpu) > void x86_cpu_realize(Object *obj, Error **errp) > { > X86CPU *cpu = X86_CPU(obj); > + CPUX86State *env = &cpu->env; > + > + if (!kvm_enabled()) { > + env->cpuid_features &= TCG_FEATURES; > + env->cpuid_ext_features &= TCG_EXT_FEATURES; > + env->cpuid_ext2_features &= (TCG_EXT2_FEATURES > +#ifdef TARGET_X86_64 > + | CPUID_EXT2_SYSCALL | CPUID_EXT2_LM > +#endif > + ); > + env->cpuid_ext3_features &= TCG_EXT3_FEATURES; > + env->cpuid_svm_features &= TCG_SVM_FEATURES; > + } > > #ifndef CONFIG_USER_ONLY > qemu_register_reset(x86_cpu_machine_reset_cb, cpu); > -- > 1.7.11.2 >
Patch
diff --git a/target-i386/cpu.c b/target-i386/cpu.c index 17e98e1..d0dec63 100644 --- a/target-i386/cpu.c +++ b/target-i386/cpu.c @@ -1171,17 +1171,6 @@ int cpu_x86_register(X86CPU *cpu, const char *cpu_model) env->cpuid_xlevel2 = def->xlevel2; object_property_set_int(OBJECT(cpu), (int64_t)def->tsc_khz * 1000, "tsc-frequency", &error); - if (!kvm_enabled()) { - env->cpuid_features &= TCG_FEATURES; - env->cpuid_ext_features &= TCG_EXT_FEATURES; - env->cpuid_ext2_features &= (TCG_EXT2_FEATURES -#ifdef TARGET_X86_64 - | CPUID_EXT2_SYSCALL | CPUID_EXT2_LM -#endif - ); - env->cpuid_ext3_features &= TCG_EXT3_FEATURES; - env->cpuid_svm_features &= TCG_SVM_FEATURES; - } object_property_set_str(OBJECT(cpu), def->model_id, "model-id", &error); out: @@ -1745,6 +1734,19 @@ static void mce_init(X86CPU *cpu) void x86_cpu_realize(Object *obj, Error **errp) { X86CPU *cpu = X86_CPU(obj); + CPUX86State *env = &cpu->env; + + if (!kvm_enabled()) { + env->cpuid_features &= TCG_FEATURES; + env->cpuid_ext_features &= TCG_EXT_FEATURES; + env->cpuid_ext2_features &= (TCG_EXT2_FEATURES +#ifdef TARGET_X86_64 + | CPUID_EXT2_SYSCALL | CPUID_EXT2_LM +#endif + ); + env->cpuid_ext3_features &= TCG_EXT3_FEATURES; + env->cpuid_svm_features &= TCG_SVM_FEATURES; + } #ifndef CONFIG_USER_ONLY qemu_register_reset(x86_cpu_machine_reset_cb, cpu);
Signed-off-by: Igor Mammedov <imammedo@redhat.com> --- target-i386/cpu.c | 24 +++++++++++++----------- 1 file changed, 13 insertions(+), 11 deletions(-)