From 714f33123bfc73c6caacd19a44e082da8cdc96e3 Mon Sep 17 00:00:00 2001 From: Steve Sistare Date: Mon, 11 Mar 2024 10:48:52 -0700 Subject: [PATCH] migration: export vcpu_dirty_limit_period Define and export vcpu_dirty_limit_period to eliminate a dependency on MigrationState. Signed-off-by: Steve Sistare Link: https://lore.kernel.org/r/1710179338-294359-6-git-send-email-steven.sistare@oracle.com Signed-off-by: Peter Xu --- include/migration/client-options.h | 1 + migration/options.c | 7 +++++++ system/dirtylimit.c | 3 +-- 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/include/migration/client-options.h b/include/migration/client-options.h index 887fea1565..59f4b55cf4 100644 --- a/include/migration/client-options.h +++ b/include/migration/client-options.h @@ -20,5 +20,6 @@ bool migrate_switchover_ack(void); /* parameters */ MigMode migrate_mode(void); +uint64_t migrate_vcpu_dirty_limit_period(void); #endif diff --git a/migration/options.c b/migration/options.c index 642cfb00a3..09178c6f60 100644 --- a/migration/options.c +++ b/migration/options.c @@ -924,6 +924,13 @@ const char *migrate_tls_hostname(void) return s->parameters.tls_hostname; } +uint64_t migrate_vcpu_dirty_limit_period(void) +{ + MigrationState *s = migrate_get_current(); + + return s->parameters.x_vcpu_dirty_limit_period; +} + uint64_t migrate_xbzrle_cache_size(void) { MigrationState *s = migrate_get_current(); diff --git a/system/dirtylimit.c b/system/dirtylimit.c index 1622bb7426..b0afaa0776 100644 --- a/system/dirtylimit.c +++ b/system/dirtylimit.c @@ -77,14 +77,13 @@ static bool dirtylimit_quit; static void vcpu_dirty_rate_stat_collect(void) { - MigrationState *s = migrate_get_current(); VcpuStat stat; int i = 0; int64_t period = DIRTYLIMIT_CALC_TIME_MS; if (migrate_dirty_limit() && migration_is_active()) { - period = s->parameters.x_vcpu_dirty_limit_period; + period = migrate_vcpu_dirty_limit_period(); } /* calculate vcpu dirtyrate */ -- 2.49.0