diff options
author | Dr. David Alan Gilbert <dgilbert@redhat.com> | 2015-11-05 18:11:18 +0000 |
---|---|---|
committer | Juan Quintela <quintela@redhat.com> | 2015-11-10 15:00:28 +0100 |
commit | c76201ab52b1dd53823cd81449d17b72224f1623 (patch) | |
tree | 2fd45f9768cb9fe05975d87b6d01459f6f2c8ee4 /migration/migration.c | |
parent | c4faeed2313e2bf9aa3694544bd211c15e28c164 (diff) | |
download | qemu-c76201ab52b1dd53823cd81449d17b72224f1623.tar.gz qemu-c76201ab52b1dd53823cd81449d17b72224f1623.tar.bz2 qemu-c76201ab52b1dd53823cd81449d17b72224f1623.zip |
Start up a postcopy/listener thread ready for incoming page data
The loading of a device state (during postcopy) may access guest
memory that's still on the source machine and thus might need
a page fill; split off a separate thread that handles the incoming
page data so that the original incoming migration code can finish
off the device data.
Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
Reviewed-by: Juan Quintela <quintela@redhat.com>
Signed-off-by: Juan Quintela <quintela@redhat.com>
Diffstat (limited to 'migration/migration.c')
-rw-r--r-- | migration/migration.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/migration/migration.c b/migration/migration.c index 38d64ea58b..db3d2dd43e 100644 --- a/migration/migration.c +++ b/migration/migration.c @@ -1441,6 +1441,12 @@ static int postcopy_start(MigrationState *ms, bool *old_vm_running) goto fail; } + /* + * Make sure the receiver can get incoming pages before we send the rest + * of the state + */ + qemu_savevm_send_postcopy_listen(fb); + qemu_savevm_state_complete_precopy(fb); qemu_savevm_send_ping(fb, 3); |