[PULL 27/56] hw/cpu: Extract cpu_exec_realize() out of cpu_common_realizefn()
Philippe Mathieu-Daudé <[email protected]>
| Newsgroups | org.nongnu.qemu-devel |
|---|---|
| Message-ID | <[email protected]> |
cpu_common_realizefn() contains code only used by system mode emulation. Extract it to a new cpu_exec_realize() helper. In the next commit this helper will be moved to cpu-system.c where it belongs. Signed-off-by: Philippe Mathieu-Daudé <[email protected]> Reviewed-by: Richard Henderson <[email protected]> Message-Id: <[email protected]> --- hw/core/cpu-common.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/hw/core/cpu-common.c b/hw/core/cpu-common.c index 59cd489b713..cd7c8763cf5 100644 --- a/hw/core/cpu-common.c +++ b/hw/core/cpu-common.c @@ -246,9 +246,8 @@ bool cpu_common_realize(CPUState *cpu, Error **errp) return true; } -static void cpu_exec_realize(DeviceState *dev, Error **errp) +static void cpu_exec_realize(CPUState *cpu, Error **errp) { - CPUState *cpu = CPU(dev); Object *machine = qdev_get_machine(); /* qdev_get_machine() can return something that's not TYPE_MACHINE @@ -264,10 +263,15 @@ static void cpu_exec_realize(DeviceState *dev, Error **errp) } } - if (dev->hotplugged) { + if (DEVICE(cpu)->hotplugged) { cpu_synchronize_post_init(cpu); cpu_resume(cpu); } +} + +static void cpu_common_realizefn(DeviceState *dev, Error **errp) +{ + cpu_exec_realize(CPU(dev), errp); /* NOTE: latest generic point where the cpu is fully realized */ } @@ -379,7 +383,7 @@ static void cpu_common_class_init(ObjectClass *klass, const void *data) k->gdb_read_register = cpu_common_gdb_read_register; k->gdb_write_register = cpu_common_gdb_write_register; set_bit(DEVICE_CATEGORY_CPU, dc->categories); - dc->realize = cpu_exec_realize; + dc->realize = cpu_common_realizefn; dc->unrealize = cpu_common_unrealizefn; rc->phases.hold = cpu_common_reset_hold; rc->phases.exit = cpu_common_reset_exit; -- 2.53.0