79c4324644
Change-Id: I2d302dda68298877c65c99147f5bf22186a59aac
58 lines
2.2 KiB
Diff
58 lines
2.2 KiB
Diff
From 9708192479d7f6507392a338f8f43b3be4c8188d Mon Sep 17 00:00:00 2001
|
|
From: qihao <qihao_yewu@cmss.chinamobile.com>
|
|
Date: Mon, 18 Dec 2023 15:19:48 +0800
|
|
Subject: [PATCH] migration: Set downtime_start even for postcopy
|
|
|
|
cheery-pick from 62f5da7dd10a594fb30cebb5569dc738456f7131
|
|
|
|
Postcopy calculates its downtime separately. It always sets
|
|
MigrationState.downtime properly, but not MigrationState.downtime_start.
|
|
|
|
Make postcopy do the same as other modes on properly recording the
|
|
timestamp when the VM is going to be stopped. Drop the temporary variable
|
|
in postcopy_start() along the way.
|
|
|
|
Signed-off-by: Peter Xu <peterx@redhat.com>
|
|
Reviewed-by: Fabiano Rosas <farosas@suse.de>
|
|
Reviewed-by: Juan Quintela <quintela@redhat.com>
|
|
Signed-off-by: Juan Quintela <quintela@redhat.com>
|
|
Message-ID: <20231030163346.765724-2-peterx@redhat.com>
|
|
Signed-off-by: qihao_yewu <qihao_yewu@cmss.chinamobile.com>
|
|
---
|
|
migration/migration.c | 5 +++--
|
|
1 file changed, 3 insertions(+), 2 deletions(-)
|
|
|
|
diff --git a/migration/migration.c b/migration/migration.c
|
|
index 6b5445853a..7ca5b58839 100644
|
|
--- a/migration/migration.c
|
|
+++ b/migration/migration.c
|
|
@@ -2989,7 +2989,6 @@ static int postcopy_start(MigrationState *ms)
|
|
int ret;
|
|
QIOChannelBuffer *bioc;
|
|
QEMUFile *fb;
|
|
- int64_t time_at_stop = qemu_clock_get_ms(QEMU_CLOCK_REALTIME);
|
|
int64_t bandwidth = migrate_max_postcopy_bandwidth();
|
|
bool restart_block = false;
|
|
int cur_state = MIGRATION_STATUS_ACTIVE;
|
|
@@ -3002,6 +3001,8 @@ static int postcopy_start(MigrationState *ms)
|
|
qemu_mutex_lock_iothread();
|
|
trace_postcopy_start_set_run();
|
|
|
|
+ ms->downtime_start = qemu_clock_get_ms(QEMU_CLOCK_REALTIME);
|
|
+
|
|
qemu_system_wakeup_request(QEMU_WAKEUP_REASON_OTHER, NULL);
|
|
global_state_store();
|
|
ret = vm_stop_force_state(RUN_STATE_FINISH_MIGRATE);
|
|
@@ -3112,7 +3113,7 @@ static int postcopy_start(MigrationState *ms)
|
|
ms->postcopy_after_devices = true;
|
|
notifier_list_notify(&migration_state_notifiers, ms);
|
|
|
|
- ms->downtime = qemu_clock_get_ms(QEMU_CLOCK_REALTIME) - time_at_stop;
|
|
+ ms->downtime = qemu_clock_get_ms(QEMU_CLOCK_REALTIME) - ms->downtime_start;
|
|
|
|
qemu_mutex_unlock_iothread();
|
|
|
|
--
|
|
2.27.0
|
|
|