From: "Michael R. Hines"<address@hidden>
This patch sets up the initial changes to the migration state
machine and prototypes to be used by the checkpointing code
to interact with the state machine so that we can later handle
failure and recovery scenarios.
Signed-off-by: Michael R. Hines<address@hidden>
---
arch_init.c | 29 ++++++++++++++++++++++++-----
include/migration/migration.h | 2 ++
migration.c | 37
+++++++++++++++++++++----------------
3 files changed, 47 insertions(+), 21 deletions(-)
diff --git a/arch_init.c b/arch_init.c
index db75120..e9d4d9e 100644
--- a/arch_init.c
+++ b/arch_init.c
@@ -658,13 +658,13 @@ static void ram_migration_cancel(void *opaque)
migration_end();
}
-static void reset_ram_globals(void)
+static void reset_ram_globals(bool reset_bulk_stage)
{
last_seen_block = NULL;
last_sent_block = NULL;
last_offset = 0;
last_version = ram_list.version;
- ram_bulk_stage = true;
+ ram_bulk_stage = reset_bulk_stage;
}