[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 34/50] hw: move CPU state serialization to migration
From: |
Paolo Bonzini |
Subject: |
[Qemu-devel] [PATCH 34/50] hw: move CPU state serialization to migration/cpu.h |
Date: |
Fri, 8 Apr 2016 22:28:54 +0200 |
Remove usage of NEED_CPU_H from hw/hw.h.
Signed-off-by: Paolo Bonzini <address@hidden>
---
include/hw/hw.h | 49 -----------------------------------------------
include/migration/cpu.h | 48 ++++++++++++++++++++++++++++++++++++++++++++++
target-alpha/machine.c | 1 +
target-arm/machine.c | 1 +
target-cris/machine.c | 1 +
target-i386/machine.c | 1 +
target-lm32/machine.c | 1 +
target-mips/machine.c | 2 +-
target-moxie/machine.c | 1 +
target-openrisc/machine.c | 1 +
target-ppc/machine.c | 1 +
target-sparc/machine.c | 1 +
12 files changed, 58 insertions(+), 50 deletions(-)
create mode 100644 include/migration/cpu.h
diff --git a/include/hw/hw.h b/include/hw/hw.h
index 2cb69d5..0456fc3 100644
--- a/include/hw/hw.h
+++ b/include/hw/hw.h
@@ -14,28 +14,6 @@
#include "qemu/log.h"
#include "qemu/module.h"
-#ifdef NEED_CPU_H
-#if TARGET_LONG_BITS == 64
-#define qemu_put_betl qemu_put_be64
-#define qemu_get_betl qemu_get_be64
-#define qemu_put_betls qemu_put_be64s
-#define qemu_get_betls qemu_get_be64s
-#define qemu_put_sbetl qemu_put_sbe64
-#define qemu_get_sbetl qemu_get_sbe64
-#define qemu_put_sbetls qemu_put_sbe64s
-#define qemu_get_sbetls qemu_get_sbe64s
-#else
-#define qemu_put_betl qemu_put_be32
-#define qemu_get_betl qemu_get_be32
-#define qemu_put_betls qemu_put_be32s
-#define qemu_get_betls qemu_get_be32s
-#define qemu_put_sbetl qemu_put_sbe32
-#define qemu_get_sbetl qemu_get_sbe32
-#define qemu_put_sbetls qemu_put_sbe32s
-#define qemu_get_sbetls qemu_get_sbe32s
-#endif
-#endif
-
typedef void QEMUResetHandler(void *opaque);
void qemu_register_reset(QEMUResetHandler *func, void *opaque);
@@ -43,31 +21,4 @@ void qemu_unregister_reset(QEMUResetHandler *func, void
*opaque);
void QEMU_NORETURN hw_error(const char *fmt, ...) GCC_FMT_ATTR(1, 2);
-#ifdef NEED_CPU_H
-#if TARGET_LONG_BITS == 64
-#define VMSTATE_UINTTL_V(_f, _s, _v) \
- VMSTATE_UINT64_V(_f, _s, _v)
-#define VMSTATE_UINTTL_EQUAL_V(_f, _s, _v) \
- VMSTATE_UINT64_EQUAL_V(_f, _s, _v)
-#define VMSTATE_UINTTL_ARRAY_V(_f, _s, _n, _v) \
- VMSTATE_UINT64_ARRAY_V(_f, _s, _n, _v)
-#define vmstate_info_uinttl vmstate_info_uint64
-#else
-#define VMSTATE_UINTTL_V(_f, _s, _v) \
- VMSTATE_UINT32_V(_f, _s, _v)
-#define VMSTATE_UINTTL_EQUAL_V(_f, _s, _v) \
- VMSTATE_UINT32_EQUAL_V(_f, _s, _v)
-#define VMSTATE_UINTTL_ARRAY_V(_f, _s, _n, _v) \
- VMSTATE_UINT32_ARRAY_V(_f, _s, _n, _v)
-#define vmstate_info_uinttl vmstate_info_uint32
-#endif
-#define VMSTATE_UINTTL(_f, _s) \
- VMSTATE_UINTTL_V(_f, _s, 0)
-#define VMSTATE_UINTTL_EQUAL(_f, _s) \
- VMSTATE_UINTTL_EQUAL_V(_f, _s, 0)
-#define VMSTATE_UINTTL_ARRAY(_f, _s, _n) \
- VMSTATE_UINTTL_ARRAY_V(_f, _s, _n, 0)
-
-#endif
-
#endif
diff --git a/include/migration/cpu.h b/include/migration/cpu.h
new file mode 100644
index 0000000..f3abbab
--- /dev/null
+++ b/include/migration/cpu.h
@@ -0,0 +1,48 @@
+/* Declarations for use for CPU state serialization. */
+#ifndef MIGRATION_CPU_H
+#define MIGRATION_CPU_H
+
+#if TARGET_LONG_BITS == 64
+#define qemu_put_betl qemu_put_be64
+#define qemu_get_betl qemu_get_be64
+#define qemu_put_betls qemu_put_be64s
+#define qemu_get_betls qemu_get_be64s
+#define qemu_put_sbetl qemu_put_sbe64
+#define qemu_get_sbetl qemu_get_sbe64
+#define qemu_put_sbetls qemu_put_sbe64s
+#define qemu_get_sbetls qemu_get_sbe64s
+
+#define VMSTATE_UINTTL_V(_f, _s, _v) \
+ VMSTATE_UINT64_V(_f, _s, _v)
+#define VMSTATE_UINTTL_EQUAL_V(_f, _s, _v) \
+ VMSTATE_UINT64_EQUAL_V(_f, _s, _v)
+#define VMSTATE_UINTTL_ARRAY_V(_f, _s, _n, _v) \
+ VMSTATE_UINT64_ARRAY_V(_f, _s, _n, _v)
+#define vmstate_info_uinttl vmstate_info_uint64
+#else
+#define qemu_put_betl qemu_put_be32
+#define qemu_get_betl qemu_get_be32
+#define qemu_put_betls qemu_put_be32s
+#define qemu_get_betls qemu_get_be32s
+#define qemu_put_sbetl qemu_put_sbe32
+#define qemu_get_sbetl qemu_get_sbe32
+#define qemu_put_sbetls qemu_put_sbe32s
+#define qemu_get_sbetls qemu_get_sbe32s
+
+#define VMSTATE_UINTTL_V(_f, _s, _v) \
+ VMSTATE_UINT32_V(_f, _s, _v)
+#define VMSTATE_UINTTL_EQUAL_V(_f, _s, _v) \
+ VMSTATE_UINT32_EQUAL_V(_f, _s, _v)
+#define VMSTATE_UINTTL_ARRAY_V(_f, _s, _n, _v) \
+ VMSTATE_UINT32_ARRAY_V(_f, _s, _n, _v)
+#define vmstate_info_uinttl vmstate_info_uint32
+#endif
+
+#define VMSTATE_UINTTL(_f, _s) \
+ VMSTATE_UINTTL_V(_f, _s, 0)
+#define VMSTATE_UINTTL_EQUAL(_f, _s) \
+ VMSTATE_UINTTL_EQUAL_V(_f, _s, 0)
+#define VMSTATE_UINTTL_ARRAY(_f, _s, _n) \
+ VMSTATE_UINTTL_ARRAY_V(_f, _s, _n, 0)
+
+#endif
diff --git a/target-alpha/machine.c b/target-alpha/machine.c
index 9ab0928..3f72943 100644
--- a/target-alpha/machine.c
+++ b/target-alpha/machine.c
@@ -1,6 +1,7 @@
#include "qemu/osdep.h"
#include "hw/hw.h"
#include "hw/boards.h"
+#include "migration/cpu.h"
static int get_fpcr(QEMUFile *f, void *opaque, size_t size)
{
diff --git a/target-arm/machine.c b/target-arm/machine.c
index 03a73d9..c23feb1 100644
--- a/target-arm/machine.c
+++ b/target-arm/machine.c
@@ -5,6 +5,7 @@
#include "sysemu/kvm.h"
#include "kvm_arm.h"
#include "internals.h"
+#include "migration/cpu.h"
static bool vfp_needed(void *opaque)
{
diff --git a/target-cris/machine.c b/target-cris/machine.c
index 9cc2820..4c9287f 100644
--- a/target-cris/machine.c
+++ b/target-cris/machine.c
@@ -20,6 +20,7 @@
#include "qemu/osdep.h"
#include "hw/hw.h"
+#include "migration/cpu.h"
static const VMStateDescription vmstate_tlbset = {
.name = "cpu/tlbset",
diff --git a/target-i386/machine.c b/target-i386/machine.c
index ee5b949..57203b2 100644
--- a/target-i386/machine.c
+++ b/target-i386/machine.c
@@ -3,6 +3,7 @@
#include "hw/boards.h"
#include "hw/i386/pc.h"
#include "hw/isa/isa.h"
+#include "migration/cpu.h"
#include "cpu.h"
#include "sysemu/kvm.h"
diff --git a/target-lm32/machine.c b/target-lm32/machine.c
index 91c943d..6f56216 100644
--- a/target-lm32/machine.c
+++ b/target-lm32/machine.c
@@ -1,6 +1,7 @@
#include "qemu/osdep.h"
#include "hw/hw.h"
#include "hw/boards.h"
+#include "migration/cpu.h"
static const VMStateDescription vmstate_env = {
.name = "env",
diff --git a/target-mips/machine.c b/target-mips/machine.c
index 22bca18..eb3d916 100644
--- a/target-mips/machine.c
+++ b/target-mips/machine.c
@@ -1,7 +1,7 @@
#include "qemu/osdep.h"
#include "hw/hw.h"
-
#include "cpu.h"
+#include "migration/cpu.h"
static int cpu_post_load(void *opaque, int version_id)
{
diff --git a/target-moxie/machine.c b/target-moxie/machine.c
index 912b791..7810e1c 100644
--- a/target-moxie/machine.c
+++ b/target-moxie/machine.c
@@ -2,6 +2,7 @@
#include "hw/hw.h"
#include "hw/boards.h"
#include "machine.h"
+#include "migration/cpu.h"
const VMStateDescription vmstate_moxie_cpu = {
.name = "cpu",
diff --git a/target-openrisc/machine.c b/target-openrisc/machine.c
index b4dc08d..bd5d50f 100644
--- a/target-openrisc/machine.c
+++ b/target-openrisc/machine.c
@@ -20,6 +20,7 @@
#include "qemu/osdep.h"
#include "hw/hw.h"
#include "hw/boards.h"
+#include "migration/cpu.h"
static const VMStateDescription vmstate_env = {
.name = "env",
diff --git a/target-ppc/machine.c b/target-ppc/machine.c
index 692121e..2ea29dd 100644
--- a/target-ppc/machine.c
+++ b/target-ppc/machine.c
@@ -4,6 +4,7 @@
#include "sysemu/kvm.h"
#include "helper_regs.h"
#include "mmu-hash64.h"
+#include "migration/cpu.h"
static int cpu_load_old(QEMUFile *f, void *opaque, int version_id)
{
diff --git a/target-sparc/machine.c b/target-sparc/machine.c
index 1046016..04806f6 100644
--- a/target-sparc/machine.c
+++ b/target-sparc/machine.c
@@ -4,6 +4,7 @@
#include "qemu/timer.h"
#include "cpu.h"
+#include "migration/cpu.h"
#ifdef TARGET_SPARC64
static const VMStateDescription vmstate_cpu_timer = {
--
1.8.3.1
- [Qemu-devel] [PATCH 21/50] arm: include cpu-qom.h in files that require ARMCPU, (continued)
- [Qemu-devel] [PATCH 21/50] arm: include cpu-qom.h in files that require ARMCPU, Paolo Bonzini, 2016/04/08
- [Qemu-devel] [PATCH 23/50] sh4: include cpu-qom.h in files that require SuperHCPU, Paolo Bonzini, 2016/04/08
- [Qemu-devel] [PATCH 20/50] target-xtensa: make cpu-qom.h not target specific, Paolo Bonzini, 2016/04/08
- [Qemu-devel] [PATCH 29/50] explicitly include hw/qdev-core.h, Paolo Bonzini, 2016/04/08
- [Qemu-devel] [PATCH 17/50] target-sparc: make cpu-qom.h not target specific, Paolo Bonzini, 2016/04/08
- [Qemu-devel] [PATCH 30/50] explicitly include linux/kvm.h, Paolo Bonzini, 2016/04/08
- [Qemu-devel] [PATCH 32/50] include: poison symbols in osdep.h, Paolo Bonzini, 2016/04/08
- [Qemu-devel] [PATCH 33/50] hw: do not use VMSTATE_*TL, Paolo Bonzini, 2016/04/08
- [Qemu-devel] [PATCH 35/50] hw: cannot include hw/hw.h from user emulation, Paolo Bonzini, 2016/04/08
- [Qemu-devel] [PATCH 36/50] cpu: move endian-dependent load/store functions to cpu-all.h, Paolo Bonzini, 2016/04/08
- [Qemu-devel] [PATCH 34/50] hw: move CPU state serialization to migration/cpu.h,
Paolo Bonzini <=
- [Qemu-devel] [PATCH 37/50] qemu-common: stop including qemu/bswap.h from qemu-common.h, Paolo Bonzini, 2016/04/08
- [Qemu-devel] [PATCH 19/50] target-unicore32: make cpu-qom.h not target specific, Paolo Bonzini, 2016/04/08
- [Qemu-devel] [PATCH 24/50] alpha: include cpu-qom.h in files that require AlphaCPU, Paolo Bonzini, 2016/04/08
- [Qemu-devel] [PATCH 25/50] mips: use MIPSCPU instead of CPUMIPSState, Paolo Bonzini, 2016/04/08
- [Qemu-devel] [PATCH 27/50] arm: remove useless cpu.h inclusion, Paolo Bonzini, 2016/04/08
- [Qemu-devel] [PATCH 28/50] explicitly include qom/cpu.h, Paolo Bonzini, 2016/04/08
- [Qemu-devel] [PATCH 26/50] ppc: use PowerPCCPU instead of CPUPPCState, Paolo Bonzini, 2016/04/08
- [Qemu-devel] [PATCH 31/50] apic: move target-dependent definitions to cpu.h, Paolo Bonzini, 2016/04/08
- [Qemu-devel] [PATCH 38/50] qemu-common: stop including qemu/host-utils.h from qemu-common.h, Paolo Bonzini, 2016/04/08