]> xenbits.xensource.com Git - qemu-xen.git/commitdiff
migration: fix ram_state_pending_exact()
authorJuan Quintela <quintela@redhat.com>
Wed, 12 Apr 2023 20:30:20 +0000 (22:30 +0200)
committerJuan Quintela <quintela@redhat.com>
Wed, 12 Apr 2023 20:47:50 +0000 (22:47 +0200)
I removed that bit on commit:

commit c8df4a7aeffcb46020f610526eea621fa5b0cd47
Author: Juan Quintela <quintela@redhat.com>
Date:   Mon Oct 3 02:00:03 2022 +0200

    migration: Split save_live_pending() into state_pending_*

Fixes: c8df4a7aeffcb46020f610526eea621fa5b0cd47
Suggested-by: Nina Schoetterl-Glausch <nsg@linux.ibm.com>
Signed-off-by: Juan Quintela <quintela@redhat.com>
migration/ram.c

index 9d1817ab7b84117798fbc319854aa4b21034f93b..79d881f7353eb5a467238ca2d149ba555572fe10 100644 (file)
@@ -3506,12 +3506,13 @@ static void ram_state_pending_estimate(void *opaque, uint64_t *must_precopy,
 static void ram_state_pending_exact(void *opaque, uint64_t *must_precopy,
                                     uint64_t *can_postcopy)
 {
+    MigrationState *s = migrate_get_current();
     RAMState **temp = opaque;
     RAMState *rs = *temp;
 
     uint64_t remaining_size = rs->migration_dirty_pages * TARGET_PAGE_SIZE;
 
-    if (!migration_in_postcopy()) {
+    if (!migration_in_postcopy() && remaining_size < s->threshold_size) {
         qemu_mutex_lock_iothread();
         WITH_RCU_READ_LOCK_GUARD() {
             migration_bitmap_sync_precopy(rs);