Am 17.06.2013 21:46, schrieb Richard Henderson: > On 06/16/2013 08:57 AM, Andreas Färber wrote: >> @@ -627,7 +627,7 @@ static void vapic_write(void *opaque, hwaddr addr, >> uint64_t data, >> hwaddr rom_paddr; >> VAPICROMState *s = opaque; >> >> - cpu_synchronize_state(env); >> + cpu_synchronize_state(CPU(x86_env_get_cpu(env))); > > ENV_GET_CPU, surely.
No, ENV_GET_CPU() is only a compatibility macro for generic code and shouldn't be used in target-specific code. Background is that foo_env_get_cpu() can coexist with bar_env_get_cpu() whereas ENV_GET_CPU() relies on there being only one arch per executable, which we hope to fix for heterogeneous emulations. Andreas >> @@ -66,7 +66,7 @@ static uint64_t vmport_ioport_read(void *opaque, hwaddr >> addr, >> unsigned char command; >> uint32_t eax; >> >> - cpu_synchronize_state(env); >> + cpu_synchronize_state(CPU(x86_env_get_cpu(env))); > > Likewise. > >> @@ -78,7 +78,7 @@ void dump_slb(FILE *f, fprintf_function cpu_fprintf, >> CPUPPCState *env) >> int i; >> uint64_t slbe, slbv; >> >> - cpu_synchronize_state(env); >> + cpu_synchronize_state(CPU(ppc_env_get_cpu(env))); > > Likewise. > >> @@ -9534,7 +9534,7 @@ void cpu_dump_state (CPUPPCState *env, FILE *f, >> fprintf_function cpu_fprintf, >> >> int i; >> >> - cpu_synchronize_state(env); >> + cpu_synchronize_state(CPU(ppc_env_get_cpu(env))); > > Likewise. > > > > r~ > -- SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg