From f9d8f6673591f30028e281e8ff6d5790adc2de83 Mon Sep 17 00:00:00 2001 From: Paolo Bonzini Date: Fri, 19 Dec 2014 12:53:13 +0100 Subject: cpu: initialize cpu->exception_index on reset This unbreaks linux-user (broken by e511b4d, cpu-exec: reset exception_index correctly, 2014-11-26). Reported-by: Eduardo Habkost Signed-off-by: Paolo Bonzini Tested-by: Laurent Desnogues Tested-by: Eduardo Habkost Message-id: 1418989994-17244-2-git-send-email-pbonzini@redhat.com Signed-off-by: Peter Maydell --- cpus.c | 3 --- qom/cpu.c | 1 + 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/cpus.c b/cpus.c index 1b5168a1db..2edb5cd807 100644 --- a/cpus.c +++ b/cpus.c @@ -940,7 +940,6 @@ static void *qemu_kvm_cpu_thread_fn(void *arg) qemu_mutex_lock(&qemu_global_mutex); qemu_thread_get_self(cpu->thread); cpu->thread_id = qemu_get_thread_id(); - cpu->exception_index = -1; cpu->can_do_io = 1; current_cpu = cpu; @@ -982,7 +981,6 @@ static void *qemu_dummy_cpu_thread_fn(void *arg) qemu_mutex_lock_iothread(); qemu_thread_get_self(cpu->thread); cpu->thread_id = qemu_get_thread_id(); - cpu->exception_index = -1; cpu->can_do_io = 1; sigemptyset(&waitset); @@ -1026,7 +1024,6 @@ static void *qemu_tcg_cpu_thread_fn(void *arg) CPU_FOREACH(cpu) { cpu->thread_id = qemu_get_thread_id(); cpu->created = true; - cpu->exception_index = -1; cpu->can_do_io = 1; } qemu_cond_signal(&qemu_cpu_cond); diff --git a/qom/cpu.c b/qom/cpu.c index 79d22285f3..9c68fa4810 100644 --- a/qom/cpu.c +++ b/qom/cpu.c @@ -249,6 +249,7 @@ static void cpu_common_reset(CPUState *cpu) cpu->icount_extra = 0; cpu->icount_decr.u32 = 0; cpu->can_do_io = 0; + cpu->exception_index = -1; memset(cpu->tb_jmp_cache, 0, TB_JMP_CACHE_SIZE * sizeof(void *)); } -- cgit v1.2.1