Il 10/07/2012 08:16, Liu Ping Fan ha scritto:
> Signed-off-by: Liu Ping Fan <pingf...@linux.vnet.ibm.com>
> ---
>  hw/pc.c |   10 +++++-----
>  1 files changed, 5 insertions(+), 5 deletions(-)
> 
> diff --git a/hw/pc.c b/hw/pc.c
> index c7e9ab3..8df58c9 100644
> --- a/hw/pc.c
> +++ b/hw/pc.c
> @@ -886,17 +886,17 @@ DeviceState *cpu_get_current_apic(void)
>      }
>  }
>  
> -static DeviceState *apic_init(void *env, uint8_t apic_id)
> +static DeviceState *apic_init(void *cpu, void *env, uint8_t apic_id)
>  {
>      DeviceState *dev;
>      static int apic_mapped;
>  
>      if (kvm_irqchip_in_kernel()) {
> -        dev = qdev_create(NULL, "kvm-apic");
> +        dev = qdev_create_kid(OBJECT(cpu), "kvm-apic");
>      } else if (xen_enabled()) {
> -        dev = qdev_create(NULL, "xen-apic");
> +        dev = qdev_create_kid(OBJECT(cpu), "xen-apic");
>      } else {
> -        dev = qdev_create(NULL, "apic");
> +        dev = qdev_create_kid(OBJECT(cpu), "apic");
>      }

Does it make sense instead to do this in the realize method of the CPU?

Paolo

>  
>      qdev_prop_set_uint8(dev, "id", apic_id);
> @@ -945,7 +945,7 @@ static X86CPU *pc_new_cpu(const char *cpu_model)
>      }
>      env = &cpu->env;
>      if ((env->cpuid_features & CPUID_APIC) || smp_cpus > 1) {
> -        env->apic_state = apic_init(env, env->cpuid_apic_id);
> +        env->apic_state = apic_init(cpu, env, env->cpuid_apic_id);
>      }
>      qemu_register_reset(pc_cpu_reset, cpu);
>      pc_cpu_reset(cpu);
> 



Reply via email to