diff options
author | Wei Yang | 2019-07-10 07:08:13 +0200 |
---|---|---|
committer | Dr. David Alan Gilbert | 2019-08-14 18:33:14 +0200 |
commit | e927a0331757c358a1010c50628613d4da83038e (patch) | |
tree | c20c3fa1187e242344d2cc4120760b1710649e80 /migration/ram.c | |
parent | migration/postcopy: discard_length must not be 0 (diff) | |
download | qemu-e927a0331757c358a1010c50628613d4da83038e.tar.gz qemu-e927a0331757c358a1010c50628613d4da83038e.tar.xz qemu-e927a0331757c358a1010c50628613d4da83038e.zip |
migration/postcopy: reduce one operation to calculate fixup_start_addr
Use the same way for run_end to calculate run_start, which saves one
operation.
Signed-off-by: Wei Yang <richardw.yang@linux.intel.com>
Message-Id: <20190710050814.31344-2-richardw.yang@linux.intel.com>
Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
Diffstat (limited to 'migration/ram.c')
-rw-r--r-- | migration/ram.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/migration/ram.c b/migration/ram.c index 4bb5e24459..da399f2c8a 100644 --- a/migration/ram.c +++ b/migration/ram.c @@ -2973,10 +2973,12 @@ static void postcopy_chunk_hostpages_pass(MigrationState *ms, bool unsent_pass, host_offset = run_start % host_ratio; if (host_offset) { do_fixup = true; - run_start -= host_offset; - fixup_start_addr = run_start; - /* For the next pass */ - run_start = run_start + host_ratio; + fixup_start_addr = run_start - host_offset; + /* + * This host page has gone, the next loop iteration starts + * from after the fixup + */ + run_start = fixup_start_addr + host_ratio; } else { /* Find the end of this run */ unsigned long run_end; |