diff --git a/migration/colo.c b/migration/colo.c index 93b78c9270..07bfa21fea 100644 --- a/migration/colo.c +++ b/migration/colo.c @@ -576,7 +576,7 @@ static void colo_process_checkpoint(MigrationState *s) trace_colo_vm_state_change("stop", "run"); timer_mod(s->colo_delay_timer, qemu_clock_get_ms(QEMU_CLOCK_HOST) + - s->parameters.x_checkpoint_delay); + migrate_checkpoint_delay()); while (s->state == MIGRATION_STATUS_COLO) { if (failover_get_state() != FAILOVER_STATUS_NONE) { @@ -651,8 +651,7 @@ void colo_checkpoint_notify(void *opaque) qemu_event_set(&s->colo_checkpoint_event); s->colo_checkpoint_time = qemu_clock_get_ms(QEMU_CLOCK_HOST); - next_notify_time = s->colo_checkpoint_time + - s->parameters.x_checkpoint_delay; + next_notify_time = s->colo_checkpoint_time + migrate_checkpoint_delay(); timer_mod(s->colo_delay_timer, next_notify_time); } diff --git a/migration/options.c b/migration/options.c index b9f3815f7e..0e102e5700 100644 --- a/migration/options.c +++ b/migration/options.c @@ -472,6 +472,15 @@ bool migrate_block_incremental(void) return s->parameters.block_incremental; } +uint32_t migrate_checkpoint_delay(void) +{ + MigrationState *s; + + s = migrate_get_current(); + + return s->parameters.x_checkpoint_delay; +} + int migrate_compress_level(void) { MigrationState *s; diff --git a/migration/options.h b/migration/options.h index aa54443353..adc2879bbb 100644 --- a/migration/options.h +++ b/migration/options.h @@ -46,6 +46,7 @@ bool migrate_cap_set(int cap, bool value, Error **errp); /* parameters */ bool migrate_block_incremental(void); +uint32_t migrate_checkpoint_delay(void); int migrate_compress_level(void); int migrate_compress_threads(void); int migrate_compress_wait_thread(void);