summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorDr. David Alan Gilbert <dgilbert@redhat.com>2015-05-21 13:24:16 +0100
committerJuan Quintela <quintela@redhat.com>2015-06-12 06:54:01 +0200
commit1a8f46f8d61ef885ff9d0bda251e4e9830c932ef (patch)
tree1d6b67fab89c55ea450dc1811aef2194fab60743 /include
parent7c1e52ba6f3994dc127118f491258ce84d0beb52 (diff)
downloadqemu-1a8f46f8d61ef885ff9d0bda251e4e9830c932ef.tar.gz
qemu-1a8f46f8d61ef885ff9d0bda251e4e9830c932ef.tar.bz2
qemu-1a8f46f8d61ef885ff9d0bda251e4e9830c932ef.zip
Move loadvm_handlers into MigrationIncomingState
In postcopy we need the loadvm_handlers to be used in a couple of different instances of the loadvm loop/routine, and thus it can't be local any more. Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com> Reviewed-by: David Gibson <david@gibson.dropbear.id.au> Reviewed-by: Juan Quintela <quintela@redhat.com> Signed-off-by: Juan Quintela <quintela@redhat.com>
Diffstat (limited to 'include')
-rw-r--r--include/migration/migration.h5
-rw-r--r--include/migration/vmstate.h2
-rw-r--r--include/qemu/typedefs.h1
3 files changed, 8 insertions, 0 deletions
diff --git a/include/migration/migration.h b/include/migration/migration.h
index 1323e3dd4a..720a949f0b 100644
--- a/include/migration/migration.h
+++ b/include/migration/migration.h
@@ -42,9 +42,14 @@ struct MigrationParams {
typedef struct MigrationState MigrationState;
+typedef QLIST_HEAD(, LoadStateEntry) LoadStateEntry_Head;
+
/* State for the incoming migration */
struct MigrationIncomingState {
QEMUFile *file;
+
+ /* See savevm.c */
+ LoadStateEntry_Head loadvm_handlers;
};
MigrationIncomingState *migration_incoming_get_current(void);
diff --git a/include/migration/vmstate.h b/include/migration/vmstate.h
index fc5e6439e4..7153b1e145 100644
--- a/include/migration/vmstate.h
+++ b/include/migration/vmstate.h
@@ -808,6 +808,8 @@ extern const VMStateInfo vmstate_info_bitmap;
#define SELF_ANNOUNCE_ROUNDS 5
+void loadvm_free_handlers(MigrationIncomingState *mis);
+
int vmstate_load_state(QEMUFile *f, const VMStateDescription *vmsd,
void *opaque, int version_id);
void vmstate_save_state(QEMUFile *f, const VMStateDescription *vmsd,
diff --git a/include/qemu/typedefs.h b/include/qemu/typedefs.h
index 74dfad3821..6fdcbcd524 100644
--- a/include/qemu/typedefs.h
+++ b/include/qemu/typedefs.h
@@ -31,6 +31,7 @@ typedef struct I2CBus I2CBus;
typedef struct I2SCodec I2SCodec;
typedef struct ISABus ISABus;
typedef struct ISADevice ISADevice;
+typedef struct LoadStateEntry LoadStateEntry;
typedef struct MACAddr MACAddr;
typedef struct MachineClass MachineClass;
typedef struct MachineState MachineState;