diff options
author | Juan Quintela <quintela@redhat.com> | 2017-03-14 18:20:30 +0100 |
---|---|---|
committer | Juan Quintela <quintela@redhat.com> | 2017-04-21 12:25:38 +0200 |
commit | 47ad861976d8490047c53d5a80b562776f3c951b (patch) | |
tree | 0a2e183f707019153fca373e6b8ed484018c3232 /migration/migration.c | |
parent | abbf1d7f9bb43ba5fac7a9c27b67d9a78749e67a (diff) |
ram: Move dirty_pages_rate to RAMState
Treat it like the rest of ram stats counters. Export its value the
same way. As an added bonus, no more MigrationState used in
migration_bitmap_sync();
Signed-off-by: Juan Quintela <quintela@redhat.com>
Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
Reviewed-by: Peter Xu <peterx@redhat.com>
--
Again, dave was the one reviewing it
Diffstat (limited to 'migration/migration.c')
-rw-r--r-- | migration/migration.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/migration/migration.c b/migration/migration.c index dcf9b944cc..e430aec80e 100644 --- a/migration/migration.c +++ b/migration/migration.c @@ -661,7 +661,7 @@ static void populate_ram_info(MigrationInfo *info, MigrationState *s) if (s->state != MIGRATION_STATUS_COMPLETED) { info->ram->remaining = ram_bytes_remaining(); - info->ram->dirty_pages_rate = s->dirty_pages_rate; + info->ram->dirty_pages_rate = ram_dirty_pages_rate(); } } @@ -1117,7 +1117,6 @@ MigrationState *migrate_init(const MigrationParams *params) s->mbps = 0.0; s->downtime = 0; s->expected_downtime = 0; - s->dirty_pages_rate = 0; s->setup_time = 0; s->start_postcopy = false; s->postcopy_after_devices = false; @@ -2007,8 +2006,8 @@ static void *migration_thread(void *opaque) bandwidth, max_size); /* if we haven't sent anything, we don't want to recalculate 10000 is a small enough number for our purposes */ - if (s->dirty_pages_rate && transferred_bytes > 10000) { - s->expected_downtime = s->dirty_pages_rate * + if (ram_dirty_pages_rate() && transferred_bytes > 10000) { + s->expected_downtime = ram_dirty_pages_rate() * (1ul << qemu_target_page_bits()) / bandwidth; } |