migration: fix counting xbzrle cache_miss_rate
authorXiao Guangrong <xiaoguangrong@tencent.com>
Mon, 4 Jun 2018 09:55:11 +0000 (17:55 +0800)
committerDr. David Alan Gilbert <dgilbert@redhat.com>
Fri, 15 Jun 2018 13:40:56 +0000 (14:40 +0100)
Sync up xbzrle_cache_miss_prev only after migration iteration goes
forward

Signed-off-by: Xiao Guangrong <xiaoguangrong@tencent.com>
Message-Id: <20180604095520.8563-4-xiaoguangrong@tencent.com>
Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
migration/ram.c

index e0d19305ee55f5d5497be91f804109be90f35139..d273a1969986b67718e9d85d12a1d0177e5d17c9 100644 (file)
@@ -1200,9 +1200,9 @@ static void migration_bitmap_sync(RAMState *rs)
                    (double)(xbzrle_counters.cache_miss -
                             rs->xbzrle_cache_miss_prev) /
                    (rs->iterations - rs->iterations_prev);
+                rs->xbzrle_cache_miss_prev = xbzrle_counters.cache_miss;
             }
             rs->iterations_prev = rs->iterations;
-            rs->xbzrle_cache_miss_prev = xbzrle_counters.cache_miss;
         }
 
         /* reset period counters */