[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v3 30/47] postcopy: Incoming initialisation
From: |
Dr. David Alan Gilbert (git) |
Subject: |
[Qemu-devel] [PATCH v3 30/47] postcopy: Incoming initialisation |
Date: |
Thu, 28 Aug 2014 16:03:47 +0100 |
From: "Dr. David Alan Gilbert" <address@hidden>
Signed-off-by: Dr. David Alan Gilbert <address@hidden>
---
arch_init.c | 11 +++++++++++
include/migration/migration.h | 1 +
migration.c | 1 +
3 files changed, 13 insertions(+)
diff --git a/arch_init.c b/arch_init.c
index 2c587aa..d4144e4 100644
--- a/arch_init.c
+++ b/arch_init.c
@@ -1234,6 +1234,17 @@ void ram_handle_compressed(void *host, uint8_t ch,
uint64_t size)
}
}
+/*
+ * Allocate data structures etc needed by incoming migration with postcopy-ram
+ * postcopy-ram's similarly names postcopy_ram_incoming_init does the work
+ */
+int ram_postcopy_incoming_init(MigrationIncomingState *mis)
+{
+ size_t ram_pages = last_ram_offset() >> TARGET_PAGE_BITS;
+
+ return postcopy_ram_incoming_init(mis, ram_pages);
+}
+
static int ram_load(QEMUFile *f, void *opaque, int version_id)
{
ram_addr_t addr;
diff --git a/include/migration/migration.h b/include/migration/migration.h
index b6e8cda..91269c8 100644
--- a/include/migration/migration.h
+++ b/include/migration/migration.h
@@ -195,6 +195,7 @@ int ram_postcopy_each_ram_discard(MigrationState *ms);
int ram_discard_range(MigrationIncomingState *mis, const char *block_name,
int source_target_page_bits,
uint64_t start, uint64_t end);
+int ram_postcopy_incoming_init(MigrationIncomingState *mis);
/**
* @migrate_add_blocker - prevent migration from proceeding
diff --git a/migration.c b/migration.c
index 7a80e7c..f5d9d02 100644
--- a/migration.c
+++ b/migration.c
@@ -99,6 +99,7 @@ MigrationIncomingState
*migration_incoming_state_init(QEMUFile* f)
void migration_incoming_state_destroy(void)
{
+ postcopy_pmi_destroy(mis_current);
g_free(mis_current);
mis_current = NULL;
}
--
1.9.3
- [Qemu-devel] [PATCH v3 38/47] Page request: Consume pages off the post-copy queue, (continued)
- [Qemu-devel] [PATCH v3 38/47] Page request: Consume pages off the post-copy queue, Dr. David Alan Gilbert (git), 2014/08/28
- [Qemu-devel] [PATCH v3 41/47] Postcopy: Use helpers to map pages during migration, Dr. David Alan Gilbert (git), 2014/08/28
- [Qemu-devel] [PATCH v3 42/47] qemu_ram_block_from_host, Dr. David Alan Gilbert (git), 2014/08/28
- [Qemu-devel] [PATCH v3 43/47] Don't sync dirty bitmaps in postcopy, Dr. David Alan Gilbert (git), 2014/08/28
- [Qemu-devel] [PATCH v3 44/47] Postcopy; Handle userfault requests, Dr. David Alan Gilbert (git), 2014/08/28
- [Qemu-devel] [PATCH v3 46/47] postcopy: Wire up loadvm_postcopy_ram_handle_{run, end} commands, Dr. David Alan Gilbert (git), 2014/08/28
- [Qemu-devel] [PATCH v3 45/47] Start up a postcopy/listener thread ready for incoming page data, Dr. David Alan Gilbert (git), 2014/08/28
- [Qemu-devel] [PATCH v3 47/47] End of migration for postcopy, Dr. David Alan Gilbert (git), 2014/08/28
- [Qemu-devel] [PATCH v3 35/47] Postcopy: Create a fault handler thread before marking the ram as userfault, Dr. David Alan Gilbert (git), 2014/08/28
- [Qemu-devel] [PATCH v3 40/47] postcopy_ram.c: place_page and helpers, Dr. David Alan Gilbert (git), 2014/08/28
- [Qemu-devel] [PATCH v3 30/47] postcopy: Incoming initialisation,
Dr. David Alan Gilbert (git) <=