On 9/6/23 17:08, Avihai Horon wrote:
> Initialization of mig_stats, compression_counters and VFIO bytes
> transferred is hard-coded in migration code path and snapshot code path.
>
> Make the code cleaner by initializing them in migrate_init().
>
> Suggested-by: Cédric Le Goater <clg@redhat.com>
> Signed-off-by: Avihai Horon <avihaih@nvidia.com>
Reviewed-by: Cédric Le Goater <clg@redhat.com>
Thanks,
C.
> ---
> migration/migration.c | 14 +++++++-------
> migration/savevm.c | 3 ---
> 2 files changed, 7 insertions(+), 10 deletions(-)
>
> diff --git a/migration/migration.c b/migration/migration.c
> index 92866a8f49..ce01a3ba6a 100644
> --- a/migration/migration.c
> +++ b/migration/migration.c
> @@ -1425,6 +1425,13 @@ void migrate_init(MigrationState *s)
> s->iteration_initial_bytes = 0;
> s->threshold_size = 0;
> s->switchover_acked = false;
> + /*
> + * set mig_stats compression_counters memory to zero for a
> + * new migration
> + */
> + memset(&mig_stats, 0, sizeof(mig_stats));
> + memset(&compression_counters, 0, sizeof(compression_counters));
> + migration_reset_vfio_bytes_transferred();
> }
>
> int migrate_add_blocker_internal(Error *reason, Error **errp)
> @@ -1635,13 +1642,6 @@ static bool migrate_prepare(MigrationState *s, bool blk, bool blk_inc,
> }
>
> migrate_init(s);
> - /*
> - * set mig_stats compression_counters memory to zero for a
> - * new migration
> - */
> - memset(&mig_stats, 0, sizeof(mig_stats));
> - memset(&compression_counters, 0, sizeof(compression_counters));
> - migration_reset_vfio_bytes_transferred();
>
> return true;
> }
> diff --git a/migration/savevm.c b/migration/savevm.c
> index 5bf8b59a7d..e14efeced0 100644
> --- a/migration/savevm.c
> +++ b/migration/savevm.c
> @@ -1620,9 +1620,6 @@ static int qemu_savevm_state(QEMUFile *f, Error **errp)
> }
>
> migrate_init(ms);
> - memset(&mig_stats, 0, sizeof(mig_stats));
> - memset(&compression_counters, 0, sizeof(compression_counters));
> - migration_reset_vfio_bytes_transferred();
> ms->to_dst_file = f;
>
> qemu_mutex_unlock_iothread();