diff options
author | Andreas Färber <afaerber@suse.de> | 2012-05-03 15:37:01 +0200 |
---|---|---|
committer | Andreas Färber <afaerber@suse.de> | 2012-10-30 22:38:37 +0100 |
commit | e9f9d6b16510776ae3d07e91b1cfb4d412701270 (patch) | |
tree | 4f2953f81ebf6a6eddb38631a4c1c84b35d8829e | |
parent | 60671e583c2bfb09746f59268fdc7d88eaa24deb (diff) |
target-i386: Pass X86CPU to cpu_x86_load_seg_cache_sipi()
Simplifies the call in apic_sipi() again and needed for moving halted
field to CPUState.
Signed-off-by: Andreas Färber <afaerber@suse.de>
Reviewed-by: Igor Mammedov <imammedo@redhat.com>
-rw-r--r-- | hw/apic.c | 2 | ||||
-rw-r--r-- | target-i386/cpu.h | 4 |
2 files changed, 4 insertions, 2 deletions
@@ -487,7 +487,7 @@ void apic_sipi(DeviceState *d) if (!s->wait_for_sipi) return; - cpu_x86_load_seg_cache_sipi(&s->cpu->env, s->sipi_vector); + cpu_x86_load_seg_cache_sipi(s->cpu, s->sipi_vector); s->wait_for_sipi = 0; } diff --git a/target-i386/cpu.h b/target-i386/cpu.h index de33303dea..d840914ebf 100644 --- a/target-i386/cpu.h +++ b/target-i386/cpu.h @@ -907,9 +907,11 @@ static inline void cpu_x86_load_seg_cache(CPUX86State *env, } } -static inline void cpu_x86_load_seg_cache_sipi(CPUX86State *env, +static inline void cpu_x86_load_seg_cache_sipi(X86CPU *cpu, int sipi_vector) { + CPUX86State *env = &cpu->env; + env->eip = 0; cpu_x86_load_seg_cache(env, R_CS, sipi_vector << 8, sipi_vector << 12, |