Skip to content

Commit

Permalink
target-i386: Don't change x86_def_t struct on cpu_x86_register()
Browse files Browse the repository at this point in the history
As eventually the x86_def_t data is going to be provided by the CPU
class, it's better to not touch it, and handle the special cases on the
X86CPU object itself.

Current behavior of the code should stay exactly the same.

Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
  • Loading branch information
ehabkost authored and bonzini committed Feb 3, 2014
1 parent c1f4122 commit 82beb53
Showing 1 changed file with 6 additions and 5 deletions.
11 changes: 6 additions & 5 deletions target-i386/cpu.c
Expand Up @@ -1841,11 +1841,6 @@ static void cpu_x86_register(X86CPU *cpu, const char *name, Error **errp)
return;
}

if (kvm_enabled()) {
def->features[FEAT_KVM] |= kvm_default_features;
}
def->features[FEAT_1_ECX] |= CPUID_EXT_HYPERVISOR;

object_property_set_str(OBJECT(cpu), def->vendor, "vendor", errp);
object_property_set_int(OBJECT(cpu), def->level, "level", errp);
object_property_set_int(OBJECT(cpu), def->family, "family", errp);
Expand All @@ -1864,6 +1859,12 @@ static void cpu_x86_register(X86CPU *cpu, const char *name, Error **errp)
cpu->cache_info_passthrough = def->cache_info_passthrough;

object_property_set_str(OBJECT(cpu), def->model_id, "model-id", errp);

/* Special cases not set in the x86_def_t structs: */
if (kvm_enabled()) {
env->features[FEAT_KVM] |= kvm_default_features;
}
env->features[FEAT_1_ECX] |= CPUID_EXT_HYPERVISOR;
}

X86CPU *cpu_x86_create(const char *cpu_model, DeviceState *icc_bridge,
Expand Down

0 comments on commit 82beb53

Please sign in to comment.