diff options
author | Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com> | 2017-07-10 19:30:15 +0300 |
---|---|---|
committer | Juan Quintela <quintela@redhat.com> | 2017-09-22 14:11:26 +0200 |
commit | 86e1167e9ad3a34ab00ed412fc67e1d02ec0ca7b (patch) | |
tree | 4cc4e3b88bce72ea568746c53a914ddbf42b44b7 /migration | |
parent | c6467627369b2518ea3cf466da6cd39da7e3a85a (diff) | |
download | qemu-86e1167e9ad3a34ab00ed412fc67e1d02ec0ca7b.zip qemu-86e1167e9ad3a34ab00ed412fc67e1d02ec0ca7b.tar.gz qemu-86e1167e9ad3a34ab00ed412fc67e1d02ec0ca7b.tar.bz2 |
migration: fix ram_save_pending
Fill postcopy-able pending only if ram postcopy is enabled.
It is necessary because of there will be other postcopy-able states and
when ram postcopy is disabled, it should not spoil common postcopy
related pending.
Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
Reviewed-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')
-rw-r--r-- | migration/ram.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/migration/ram.c b/migration/ram.c index cedbeae..88ca69e 100644 --- a/migration/ram.c +++ b/migration/ram.c @@ -2276,8 +2276,12 @@ static void ram_save_pending(QEMUFile *f, void *opaque, uint64_t max_size, remaining_size = rs->migration_dirty_pages * TARGET_PAGE_SIZE; } - /* We can do postcopy, and all the data is postcopiable */ - *postcopiable_pending += remaining_size; + if (migrate_postcopy_ram()) { + /* We can do postcopy, and all the data is postcopiable */ + *postcopiable_pending += remaining_size; + } else { + *non_postcopiable_pending += remaining_size; + } } static int load_xbzrle(QEMUFile *f, ram_addr_t addr, void *host) |