split out cpu initialization which is piix independent from pc_init1() into pc_cpus_init(). Later it will be used.
Signed-off-by: Isaku Yamahata <yamah...@valinux.co.jp> Acked-by: Gerd Hoffmann <kra...@redhat.com> --- hw/pc.c | 32 +++++++++++++++++++------------- 1 files changed, 19 insertions(+), 13 deletions(-) diff --git a/hw/pc.c b/hw/pc.c index 1a13b0f..90cf0f4 100644 --- a/hw/pc.c +++ b/hw/pc.c @@ -993,6 +993,24 @@ static CPUState *pc_new_cpu(const char *cpu_model) return env; } +static void pc_cpus_init(const char *cpu_model) +{ + int i; + + /* init CPUs */ + if (cpu_model == NULL) { +#ifdef TARGET_X86_64 + cpu_model = "qemu64"; +#else + cpu_model = "qemu32"; +#endif + } + + for(i = 0; i < smp_cpus; i++) { + (void)pc_new_cpu(cpu_model); + } +} + static qemu_irq *pc_allocate_cpu_irq(void) { return qemu_allocate_irqs(pic_irq_request, NULL, 1); @@ -1016,7 +1034,6 @@ static void pc_init1(ram_addr_t ram_size, ISADevice *isa_dev; PCII440FXState *i440fx_state; int piix3_devfn = -1; - CPUState *env; qemu_irq *cpu_irq; qemu_irq *isa_irq; qemu_irq *i8259; @@ -1037,18 +1054,7 @@ static void pc_init1(ram_addr_t ram_size, linux_boot = (kernel_filename != NULL); - /* init CPUs */ - if (cpu_model == NULL) { -#ifdef TARGET_X86_64 - cpu_model = "qemu64"; -#else - cpu_model = "qemu32"; -#endif - } - - for (i = 0; i < smp_cpus; i++) { - env = pc_new_cpu(cpu_model); - } + pc_cpus_init(cpu_model); vmport_init(); -- 1.6.5.4