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>
This commit is contained in:
parent
dc15c0517b
commit
e435601058
@ -1547,16 +1547,17 @@ static void host_x86_cpu_initfn(Object *obj)
|
|||||||
CPUX86State *env = &cpu->env;
|
CPUX86State *env = &cpu->env;
|
||||||
KVMState *s = kvm_state;
|
KVMState *s = kvm_state;
|
||||||
|
|
||||||
assert(kvm_enabled());
|
|
||||||
|
|
||||||
/* We can't fill the features array here because we don't know yet if
|
/* We can't fill the features array here because we don't know yet if
|
||||||
* "migratable" is true or false.
|
* "migratable" is true or false.
|
||||||
*/
|
*/
|
||||||
cpu->host_features = true;
|
cpu->host_features = true;
|
||||||
|
|
||||||
env->cpuid_level = kvm_arch_get_supported_cpuid(s, 0x0, 0, R_EAX);
|
/* If KVM is disabled, cpu_x86_create() will already report an error */
|
||||||
env->cpuid_xlevel = kvm_arch_get_supported_cpuid(s, 0x80000000, 0, R_EAX);
|
if (kvm_enabled()) {
|
||||||
env->cpuid_xlevel2 = kvm_arch_get_supported_cpuid(s, 0xC0000000, 0, R_EAX);
|
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);
|
object_property_set_bool(OBJECT(cpu), true, "pmu", &error_abort);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user