On 2012-10-16 18:02, Andreas Färber wrote: > Am 12.10.2012 03:26, schrieb Andreas Färber: >> This prepares for changing the variable type from void*. >> >> Signed-off-by: Andreas Färber <afaer...@suse.de> >> Cc: Igor Mammedov <imamm...@redhat.com> > > Paolo, are you happy with getting rid of the pointer property this way? > > Jan, are you okay with accessing APICCommonState in target-i386/cpu.c as > an interim solution?
Yes, I don't see it as a problem. Jan > > Andreas > >> --- >> hw/apic_common.c | 1 - >> target-i386/cpu.c | 5 ++++- >> 2 Dateien geändert, 4 Zeilen hinzugefügt(+), 2 Zeilen entfernt(-) >> >> diff --git a/hw/apic_common.c b/hw/apic_common.c >> index 371f95d..a26a631 100644 >> --- a/hw/apic_common.c >> +++ b/hw/apic_common.c >> @@ -368,7 +368,6 @@ static const VMStateDescription vmstate_apic_common = { >> >> static Property apic_properties_common[] = { >> DEFINE_PROP_UINT8("id", APICCommonState, id, -1), >> - DEFINE_PROP_PTR("cpu_env", APICCommonState, cpu_env), >> DEFINE_PROP_BIT("vapic", APICCommonState, vapic_control, >> VAPIC_ENABLE_BIT, >> true), >> DEFINE_PROP_END_OF_LIST(), >> diff --git a/target-i386/cpu.c b/target-i386/cpu.c >> index e307b4e..0cce910 100644 >> --- a/target-i386/cpu.c >> +++ b/target-i386/cpu.c >> @@ -41,6 +41,7 @@ >> #ifndef CONFIG_USER_ONLY >> #include "hw/xen.h" >> #include "hw/sysbus.h" >> +#include "hw/apic_internal.h" >> #endif >> >> /* feature flags taken from "Intel Processor Identification and the CPUID >> @@ -1884,6 +1885,7 @@ static void x86_cpu_apic_init(X86CPU *cpu, Error >> **errp) >> #ifndef CONFIG_USER_ONLY >> static int apic_mapped; >> CPUX86State *env = &cpu->env; >> + APICCommonState *apic; >> const char *apic_type = "apic"; >> >> if (kvm_irqchip_in_kernel()) { >> @@ -1902,7 +1904,8 @@ static void x86_cpu_apic_init(X86CPU *cpu, Error >> **errp) >> OBJECT(env->apic_state), NULL); >> qdev_prop_set_uint8(env->apic_state, "id", env->cpuid_apic_id); >> /* TODO: convert to link<> */ >> - qdev_prop_set_ptr(env->apic_state, "cpu_env", env); >> + apic = APIC_COMMON(env->apic_state); >> + apic->cpu_env = env; >> >> if (qdev_init(env->apic_state)) { >> error_setg(errp, "APIC device '%s' could not be initialized", >> >
signature.asc
Description: OpenPGP digital signature