diff options
author | Peter Xu <peterx@redhat.com> | 2018-01-03 20:20:08 +0800 |
---|---|---|
committer | Juan Quintela <quintela@redhat.com> | 2018-01-15 12:48:08 +0100 |
commit | 4af246a34e3155365e6be9dda201f3467d0498d9 (patch) | |
tree | ef2202e75e0ac913eda9f97bab6db59b429b1040 /migration | |
parent | deb74fb6701755a4f864977608ea3919e4970fae (diff) | |
download | qemu-4af246a34e3155365e6be9dda201f3467d0498d9.zip qemu-4af246a34e3155365e6be9dda201f3467d0498d9.tar.gz qemu-4af246a34e3155365e6be9dda201f3467d0498d9.tar.bz2 |
migration: split use of MigrationState.total_time
It was used either to:
1. store initial timestamp of migration start, and
2. store total time used by last migration
Let's provide two parameters for each of them. Mix use of the two is
slightly misleading.
Signed-off-by: Peter Xu <peterx@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/migration.c | 7 | ||||
-rw-r--r-- | migration/migration.h | 3 |
2 files changed, 7 insertions, 3 deletions
diff --git a/migration/migration.c b/migration/migration.c index 0b513c2..23f6e50 100644 --- a/migration/migration.c +++ b/migration/migration.c @@ -619,7 +619,7 @@ static void fill_source_migration_info(MigrationInfo *info) info->has_status = true; info->has_total_time = true; info->total_time = qemu_clock_get_ms(QEMU_CLOCK_REALTIME) - - s->total_time; + - s->start_time; info->has_expected_downtime = true; info->expected_downtime = s->expected_downtime; info->has_setup_time = true; @@ -1300,7 +1300,8 @@ MigrationState *migrate_init(void) migrate_set_state(&s->state, MIGRATION_STATUS_NONE, MIGRATION_STATUS_SETUP); - s->total_time = qemu_clock_get_ms(QEMU_CLOCK_REALTIME); + s->start_time = qemu_clock_get_ms(QEMU_CLOCK_REALTIME); + s->total_time = 0; return s; } @@ -2332,7 +2333,7 @@ static void *migration_thread(void *opaque) qemu_mutex_lock_iothread(); if (s->state == MIGRATION_STATUS_COMPLETED) { uint64_t transferred_bytes = qemu_ftell(s->to_dst_file); - s->total_time = end_time - s->total_time; + s->total_time = end_time - s->start_time; if (!entered_postcopy) { s->downtime = end_time - start_time; } diff --git a/migration/migration.h b/migration/migration.h index d84bc55..d1132b1 100644 --- a/migration/migration.h +++ b/migration/migration.h @@ -115,6 +115,9 @@ struct MigrationState } rp_state; double mbps; + /* Timestamp when recent migration starts (ms) */ + int64_t start_time; + /* Total time used by latest migration (ms) */ int64_t total_time; int64_t downtime; int64_t expected_downtime; |