Now it is called qemu_file_bytes that reflects better what it does, and we create qemu_file_bytes_now to not have to call qemu_ftell() twice.
Signed-off-by: Juan Quintela <quint...@redhat.com> --- migration/migration.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/migration/migration.c b/migration/migration.c index b78dffc..974ff92 100644 --- a/migration/migration.c +++ b/migration/migration.c @@ -2044,13 +2044,13 @@ static void *migration_thread(void *opaque) /* Used by the bandwidth calcs, updated later */ int64_t initial_time = qemu_clock_get_ms(QEMU_CLOCK_REALTIME); int64_t setup_start = qemu_clock_get_ms(QEMU_CLOCK_HOST); - int64_t initial_bytes = 0; /* * The final stage happens when the remaining data is smaller than * this threshold; it's calculated from the requested downtime and * measured bandwidth */ int64_t threshold_size = 0; + int64_t qemu_file_bytes = 0; int64_t start_time = initial_time; int64_t end_time; bool old_vm_running = false; @@ -2138,8 +2138,9 @@ static void *migration_thread(void *opaque) } current_time = qemu_clock_get_ms(QEMU_CLOCK_REALTIME); if (current_time >= initial_time + BUFFER_DELAY) { - uint64_t transferred_bytes = qemu_ftell(s->to_dst_file) - - initial_bytes; + uint64_t qemu_file_bytes_now = qemu_ftell(s->to_dst_file); + uint64_t transferred_bytes = + qemu_file_bytes_now - qemu_file_bytes; uint64_t time_spent = current_time - initial_time; double bandwidth = (double)transferred_bytes / time_spent; threshold_size = bandwidth * s->parameters.downtime_limit; @@ -2158,7 +2159,7 @@ static void *migration_thread(void *opaque) qemu_file_reset_rate_limit(s->to_dst_file); initial_time = current_time; - initial_bytes = qemu_ftell(s->to_dst_file); + qemu_file_bytes = qemu_file_bytes_now; } if (qemu_file_rate_limit(s->to_dst_file)) { /* usleep expects microseconds */ -- 2.9.4