migration: Create migrate_downtime_limit() function

Signed-off-by: Juan Quintela <quintela@redhat.com>
Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
This commit is contained in:
Juan Quintela 2023-03-02 12:00:43 +01:00
parent 8f9c532756
commit f5da8ba477
3 changed files with 10 additions and 2 deletions

View File

@ -2737,7 +2737,7 @@ static void migration_update_counters(MigrationState *s,
transferred = current_bytes - s->iteration_initial_bytes;
time_spent = current_time - s->iteration_start_time;
bandwidth = (double)transferred / time_spent;
s->threshold_size = bandwidth * s->parameters.downtime_limit;
s->threshold_size = bandwidth * migrate_downtime_limit();
s->mbps = (((double) transferred * 8.0) /
((double) time_spent / 1000.0)) / 1000.0 / 1000.0;
@ -3244,7 +3244,7 @@ void migrate_fd_connect(MigrationState *s, Error *error_in)
*/
migrate_error_free(s);
s->expected_downtime = s->parameters.downtime_limit;
s->expected_downtime = migrate_downtime_limit();
if (resume) {
assert(s->cleanup_bh);
} else {

View File

@ -518,6 +518,13 @@ int migrate_decompress_threads(void)
return s->parameters.decompress_threads;
}
uint64_t migrate_downtime_limit(void)
{
MigrationState *s = migrate_get_current();
return s->parameters.downtime_limit;
}
uint8_t migrate_max_cpu_throttle(void)
{
MigrationState *s = migrate_get_current();

View File

@ -71,6 +71,7 @@ uint8_t migrate_cpu_throttle_increment(void);
uint8_t migrate_cpu_throttle_initial(void);
bool migrate_cpu_throttle_tailslow(void);
int migrate_decompress_threads(void);
uint64_t migrate_downtime_limit(void);
uint8_t migrate_max_cpu_throttle(void);
uint64_t migrate_max_bandwidth(void);
int64_t migrate_max_postcopy_bandwidth(void);