target-i386: Remove assert(kvm_enabled()) from host_x86_cpu_initfn()

The code will be changed to allow creation of the CPU object and
report kvm_required errors only at realizefn, so we need to make
the instance_init function more flexible.

Reviewed-by: Igor Mammedov <imammedo@redhat.com>
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
master
Eduardo Habkost 2016-06-10 08:42:08 -03:00
parent dc15c0517b
commit e435601058
1 changed files with 6 additions and 5 deletions

View File

@ -1547,16 +1547,17 @@ static void host_x86_cpu_initfn(Object *obj)
CPUX86State *env = &cpu->env;
KVMState *s = kvm_state;
assert(kvm_enabled());
/* We can't fill the features array here because we don't know yet if
* "migratable" is true or false.
*/
cpu->host_features = true;
env->cpuid_level = kvm_arch_get_supported_cpuid(s, 0x0, 0, R_EAX);
env->cpuid_xlevel = kvm_arch_get_supported_cpuid(s, 0x80000000, 0, R_EAX);
env->cpuid_xlevel2 = kvm_arch_get_supported_cpuid(s, 0xC0000000, 0, R_EAX);
/* If KVM is disabled, cpu_x86_create() will already report an error */
if (kvm_enabled()) {
env->cpuid_level = kvm_arch_get_supported_cpuid(s, 0x0, 0, R_EAX);
env->cpuid_xlevel = kvm_arch_get_supported_cpuid(s, 0x80000000, 0, R_EAX);
env->cpuid_xlevel2 = kvm_arch_get_supported_cpuid(s, 0xC0000000, 0, R_EAX);
}
object_property_set_bool(OBJECT(cpu), true, "pmu", &error_abort);
}