mirror of https://github.com/xqemu/xqemu.git
target-i386: Move TCG initialization to realize time
QOM instance_init functions are not supposed to have any side-effects, as new objects may be created at any moment for querying property information (see qmp_device_list_properties()). Move TCG initialization to realize time so it won't be called when just doing object_new() on a X86CPU subclass. Reviewed-by: Igor Mammedov <imammedo@redhat.com> Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
This commit is contained in:
parent
4fe15cdedf
commit
57f2453ab4
|
@ -2902,6 +2902,10 @@ static void x86_cpu_realizefn(DeviceState *dev, Error **errp)
|
|||
}
|
||||
|
||||
|
||||
if (tcg_enabled()) {
|
||||
tcg_x86_init();
|
||||
}
|
||||
|
||||
#ifndef CONFIG_USER_ONLY
|
||||
qemu_register_reset(x86_cpu_machine_reset_cb, cpu);
|
||||
|
||||
|
@ -3136,11 +3140,6 @@ static void x86_cpu_initfn(Object *obj)
|
|||
}
|
||||
|
||||
x86_cpu_load_def(cpu, xcc->cpu_def, &error_abort);
|
||||
|
||||
/* init various static tables used in TCG mode */
|
||||
if (tcg_enabled()) {
|
||||
tcg_x86_init();
|
||||
}
|
||||
}
|
||||
|
||||
static int64_t x86_cpu_get_arch_id(CPUState *cs)
|
||||
|
|
Loading…
Reference in New Issue