[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PULL 5/5] migration: simplify migration_iteration_run()
From: |
Vladimir Sementsov-Ogievskiy |
Subject: |
Re: [PULL 5/5] migration: simplify migration_iteration_run() |
Date: |
Tue, 31 Jan 2023 14:44:14 +0300 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.4.2 |
On 30.01.23 11:03, Juan Quintela wrote:
Signed-off-by: Juan Quintela <quintela@redhat.com>
Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
---
migration/migration.c | 24 ++++++++++++------------
1 file changed, 12 insertions(+), 12 deletions(-)
diff --git a/migration/migration.c b/migration/migration.c
index 594a42f085..644c61e91d 100644
--- a/migration/migration.c
+++ b/migration/migration.c
@@ -3764,23 +3764,23 @@ static MigIterateState
migration_iteration_run(MigrationState *s)
pend_pre, pend_compat, pend_post);
}
- if (pending_size && pending_size >= s->threshold_size) {
- /* Still a significant amount to transfer */
- if (!in_postcopy && pend_pre <= s->threshold_size &&
- qatomic_read(&s->start_postcopy)) {
- if (postcopy_start(s)) {
- error_report("%s: postcopy failed to start", __func__);
- }
- return MIG_ITERATE_SKIP;
- }
- /* Just another iteration step */
- qemu_savevm_state_iterate(s->to_dst_file, in_postcopy);
- } else {
+ if (pending_size < s->threshold_size) {
to keep the logic, formally it should be "if (!pending_size || pending_size <
s->threshold_size)"...
Actually, could s->threshold_size be 0 here? Or, worth an assertion
assert(s->threshold_size) ?
trace_migration_thread_low_pending(pending_size);
migration_completion(s);
return MIG_ITERATE_BREAK;
}
+ /* Still a significant amount to transfer */
+ if (!in_postcopy && pend_pre <= s->threshold_size &&
+ qatomic_read(&s->start_postcopy)) {
+ if (postcopy_start(s)) {
+ error_report("%s: postcopy failed to start", __func__);
+ }
+ return MIG_ITERATE_SKIP;
+ }
+
+ /* Just another iteration step */
+ qemu_savevm_state_iterate(s->to_dst_file, in_postcopy);
return MIG_ITERATE_RESUME;
}
--
Best regards,
Vladimir
- [PULL 0/5] Next patches, Juan Quintela, 2023/01/30
- [PULL 2/5] migration: No save_live_pending() method uses the QEMUFile parameter, Juan Quintela, 2023/01/30
- [PULL 3/5] migration: Split save_live_pending() into state_pending_*, Juan Quintela, 2023/01/30
- [PULL 1/5] migration: Fix migration crash when target psize larger than host, Juan Quintela, 2023/01/30
- [PULL 5/5] migration: simplify migration_iteration_run(), Juan Quintela, 2023/01/30
- Re: [PULL 5/5] migration: simplify migration_iteration_run(),
Vladimir Sementsov-Ogievskiy <=
- [PULL 4/5] migration: Remove unused threshold_size parameter, Juan Quintela, 2023/01/30