On 06/01/2023 19:56, Alex Williamson wrote:
External email: Use caution opening links or attachments
On Thu, 29 Dec 2022 13:03:34 +0200
Avihai Horon <avih...@nvidia.com> wrote:
From: Juan Quintela <quint...@redhat.com>
IMHO, there should always be a commit log description. Why is this a
simplification?
Yes. It just rephrases the condition so we can drop the else {}.
What does it allow us to do? Nothing later obviously
depends on this, why is it part of this series?
Right.
This is part of Juan's RFC [1].
Eventually we didn't need the RFC because of the new MIG_DATA_SIZE ioctl.
Since Juan already did this work, I thought I might as well take some of
these patches.
I will simply drop it in next version.
If a real need to simplify this if else condition arises in the future,
it can be done then.
Thanks.
[1]
https://lore.kernel.org/qemu-devel/20221003031600.20084-1-quint...@redhat.com/
Thanks,
Alex
Signed-off-by: Juan Quintela <quint...@redhat.com>
Signed-off-by: Avihai Horon <avih...@nvidia.com>
---
migration/migration.c | 25 +++++++++++++------------
1 file changed, 13 insertions(+), 12 deletions(-)
diff --git a/migration/migration.c b/migration/migration.c
index 9795d0ec5c..61b9ce0fe8 100644
--- a/migration/migration.c
+++ b/migration/migration.c
@@ -3758,23 +3758,24 @@ static MigIterateState
migration_iteration_run(MigrationState *s)
trace_migrate_pending(pending_size, s->threshold_size,
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 || pending_size < 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;
}