diff options
author | Dr. David Alan Gilbert <dgilbert@redhat.com> | 2015-11-05 18:11:03 +0000 |
---|---|---|
committer | Juan Quintela <quintela@redhat.com> | 2015-11-10 15:00:27 +0100 |
commit | 1caddf8a819d83027d897997c0af10c426f88633 (patch) | |
tree | 13be324239b68e666dbf7b8630ef7b8bdcb1ce6b /include/migration | |
parent | e0b266f01dd21748c12f35e18e6f300035f2f336 (diff) |
postcopy: Incoming initialisation
Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
Reviewed-by: David Gibson <david@gibson.dropbear.id.au>
Reviewed-by: Amit Shah <amit.shah@redhat.com>
Reviewed-by: Juan Quintela <quintela@redhat.com>
Signed-off-by: Juan Quintela <quintela@redhat.com>
Diffstat (limited to 'include/migration')
-rw-r--r-- | include/migration/migration.h | 3 | ||||
-rw-r--r-- | include/migration/postcopy-ram.h | 12 |
2 files changed, 15 insertions, 0 deletions
diff --git a/include/migration/migration.h b/include/migration/migration.h index b382d7774f..6e42b58dc3 100644 --- a/include/migration/migration.h +++ b/include/migration/migration.h @@ -86,6 +86,8 @@ struct MigrationIncomingState { */ QemuEvent main_thread_load_event; + /* For the kernel to send us notifications */ + int userfault_fd; QEMUFile *to_src_file; QemuMutex rp_mutex; /* We send replies from multiple threads */ @@ -204,6 +206,7 @@ int ram_postcopy_send_discard_bitmap(MigrationState *ms); /* For incoming postcopy discard */ int ram_discard_range(MigrationIncomingState *mis, const char *block_name, uint64_t start, size_t length); +int ram_postcopy_incoming_init(MigrationIncomingState *mis); /** * @migrate_add_blocker - prevent migration from proceeding diff --git a/include/migration/postcopy-ram.h b/include/migration/postcopy-ram.h index de79fa778f..f87020c582 100644 --- a/include/migration/postcopy-ram.h +++ b/include/migration/postcopy-ram.h @@ -17,6 +17,18 @@ bool postcopy_ram_supported_by_host(void); /* + * Initialise postcopy-ram, setting the RAM to a state where we can go into + * postcopy later; must be called prior to any precopy. + * called from ram.c's similarly named ram_postcopy_incoming_init + */ +int postcopy_ram_incoming_init(MigrationIncomingState *mis, size_t ram_pages); + +/* + * At the end of a migration where postcopy_ram_incoming_init was called. + */ +int postcopy_ram_incoming_cleanup(MigrationIncomingState *mis); + +/* * Discard the contents of 'length' bytes from 'start' * We can assume that if we've been called postcopy_ram_hosttest returned true */ |