aboutsummaryrefslogtreecommitdiff
path: root/qom
diff options
context:
space:
mode:
authorJames Hogan <james.hogan@imgtec.com>2013-08-27 12:19:10 +0100
committerPaolo Bonzini <pbonzini@redhat.com>2013-09-20 12:37:52 +0200
commit97577fd4c31777780a22b77afa4590086ac962c7 (patch)
treef564b8e5b47a84f846ef413e14e230ee67488304 /qom
parent3e469dbfe413c25d48321c3a19ddfae0727dc6e5 (diff)
downloadqemu-97577fd4c31777780a22b77afa4590086ac962c7.zip
qemu-97577fd4c31777780a22b77afa4590086ac962c7.tar.gz
qemu-97577fd4c31777780a22b77afa4590086ac962c7.tar.bz2
cpu: Move cpu state syncs up into cpu_dump_state()
The x86 and ppc targets call cpu_synchronize_state() from their *_cpu_dump_state() callbacks to ensure that up to date state is dumped when KVM is enabled (for example when a KVM internal error occurs). Move this call up into the generic cpu_dump_state() function so that other KVM targets (namely MIPS) can take advantage of it. This requires kvm_cpu_synchronize_state() and cpu_synchronize_state() to be moved out of the #ifdef NEED_CPU_H in <sysemu/kvm.h> so that they're accessible to qom/cpu.c. Signed-off-by: James Hogan <james.hogan@imgtec.com> Cc: Andreas Färber <afaerber@suse.de> Cc: Alexander Graf <agraf@suse.de> Cc: Gleb Natapov <gleb@redhat.com> Cc: qemu-ppc@nongnu.org Cc: kvm@vger.kernel.org Signed-off-by: Gleb Natapov <gleb@redhat.com>
Diffstat (limited to 'qom')
-rw-r--r--qom/cpu.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/qom/cpu.c b/qom/cpu.c
index fa7ec6b..818fb26 100644
--- a/qom/cpu.c
+++ b/qom/cpu.c
@@ -162,6 +162,7 @@ void cpu_dump_state(CPUState *cpu, FILE *f, fprintf_function cpu_fprintf,
CPUClass *cc = CPU_GET_CLASS(cpu);
if (cc->dump_state) {
+ cpu_synchronize_state(cpu);
cc->dump_state(cpu, f, cpu_fprintf, flags);
}
}