[Qemu-devel] [PATCH] migration: consolidate time info into populate_time_info

Wei Yang posted 1 patch 4 years, 9 months ago
Test asan passed
Test docker-clang@ubuntu passed
Test docker-mingw@fedora passed
Test checkpatch passed
Test s390x passed
Test FreeBSD passed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20190716005411.4156-1-richardw.yang@linux.intel.com
Maintainers: "Dr. David Alan Gilbert" <dgilbert@redhat.com>, Juan Quintela <quintela@redhat.com>
migration/migration.c | 40 ++++++++++++++++++++++------------------
1 file changed, 22 insertions(+), 18 deletions(-)
[Qemu-devel] [PATCH] migration: consolidate time info into populate_time_info
Posted by Wei Yang 4 years, 9 months ago
Consolidate time information fill up into its function for better
readability.

Signed-off-by: Wei Yang <richardw.yang@linux.intel.com>
---
 migration/migration.c | 40 ++++++++++++++++++++++------------------
 1 file changed, 22 insertions(+), 18 deletions(-)

diff --git a/migration/migration.c b/migration/migration.c
index 47fe22d327..18ef933105 100644
--- a/migration/migration.c
+++ b/migration/migration.c
@@ -822,6 +822,25 @@ bool migration_is_setup_or_active(int state)
     }
 }
 
+static void populate_time_info(MigrationInfo *info, MigrationState *s)
+{
+    info->has_status = true;
+    info->has_setup_time = true;
+    info->setup_time = s->setup_time;
+    if (s->state == MIGRATION_STATUS_COMPLETED) {
+        info->has_total_time = true;
+        info->total_time = s->total_time;
+        info->has_downtime = true;
+        info->downtime = s->downtime;
+    } else {
+        info->has_total_time = true;
+        info->total_time = qemu_clock_get_ms(QEMU_CLOCK_REALTIME) -
+                           s->start_time;
+        info->has_expected_downtime = true;
+        info->expected_downtime = s->expected_downtime;
+    }
+}
+
 static void populate_ram_info(MigrationInfo *info, MigrationState *s)
 {
     info->has_ram = true;
@@ -907,16 +926,8 @@ static void fill_source_migration_info(MigrationInfo *info)
     case MIGRATION_STATUS_DEVICE:
     case MIGRATION_STATUS_POSTCOPY_PAUSED:
     case MIGRATION_STATUS_POSTCOPY_RECOVER:
-         /* TODO add some postcopy stats */
-        info->has_status = true;
-        info->has_total_time = true;
-        info->total_time = qemu_clock_get_ms(QEMU_CLOCK_REALTIME)
-            - s->start_time;
-        info->has_expected_downtime = true;
-        info->expected_downtime = s->expected_downtime;
-        info->has_setup_time = true;
-        info->setup_time = s->setup_time;
-
+        /* TODO add some postcopy stats */
+        populate_time_info(info, s);
         populate_ram_info(info, s);
         populate_disk_info(info);
         break;
@@ -925,14 +936,7 @@ static void fill_source_migration_info(MigrationInfo *info)
         /* TODO: display COLO specific information (checkpoint info etc.) */
         break;
     case MIGRATION_STATUS_COMPLETED:
-        info->has_status = true;
-        info->has_total_time = true;
-        info->total_time = s->total_time;
-        info->has_downtime = true;
-        info->downtime = s->downtime;
-        info->has_setup_time = true;
-        info->setup_time = s->setup_time;
-
+        populate_time_info(info, s);
         populate_ram_info(info, s);
         break;
     case MIGRATION_STATUS_FAILED:
-- 
2.17.1


Re: [Qemu-devel] [PATCH] migration: consolidate time info into populate_time_info
Posted by Dr. David Alan Gilbert 4 years, 9 months ago
* Wei Yang (richardw.yang@linux.intel.com) wrote:
> Consolidate time information fill up into its function for better
> readability.
> 
> Signed-off-by: Wei Yang <richardw.yang@linux.intel.com>

Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com>

> ---
>  migration/migration.c | 40 ++++++++++++++++++++++------------------
>  1 file changed, 22 insertions(+), 18 deletions(-)
> 
> diff --git a/migration/migration.c b/migration/migration.c
> index 47fe22d327..18ef933105 100644
> --- a/migration/migration.c
> +++ b/migration/migration.c
> @@ -822,6 +822,25 @@ bool migration_is_setup_or_active(int state)
>      }
>  }
>  
> +static void populate_time_info(MigrationInfo *info, MigrationState *s)
> +{
> +    info->has_status = true;
> +    info->has_setup_time = true;
> +    info->setup_time = s->setup_time;
> +    if (s->state == MIGRATION_STATUS_COMPLETED) {
> +        info->has_total_time = true;
> +        info->total_time = s->total_time;
> +        info->has_downtime = true;
> +        info->downtime = s->downtime;
> +    } else {
> +        info->has_total_time = true;
> +        info->total_time = qemu_clock_get_ms(QEMU_CLOCK_REALTIME) -
> +                           s->start_time;
> +        info->has_expected_downtime = true;
> +        info->expected_downtime = s->expected_downtime;
> +    }
> +}
> +
>  static void populate_ram_info(MigrationInfo *info, MigrationState *s)
>  {
>      info->has_ram = true;
> @@ -907,16 +926,8 @@ static void fill_source_migration_info(MigrationInfo *info)
>      case MIGRATION_STATUS_DEVICE:
>      case MIGRATION_STATUS_POSTCOPY_PAUSED:
>      case MIGRATION_STATUS_POSTCOPY_RECOVER:
> -         /* TODO add some postcopy stats */
> -        info->has_status = true;
> -        info->has_total_time = true;
> -        info->total_time = qemu_clock_get_ms(QEMU_CLOCK_REALTIME)
> -            - s->start_time;
> -        info->has_expected_downtime = true;
> -        info->expected_downtime = s->expected_downtime;
> -        info->has_setup_time = true;
> -        info->setup_time = s->setup_time;
> -
> +        /* TODO add some postcopy stats */
> +        populate_time_info(info, s);
>          populate_ram_info(info, s);
>          populate_disk_info(info);
>          break;
> @@ -925,14 +936,7 @@ static void fill_source_migration_info(MigrationInfo *info)
>          /* TODO: display COLO specific information (checkpoint info etc.) */
>          break;
>      case MIGRATION_STATUS_COMPLETED:
> -        info->has_status = true;
> -        info->has_total_time = true;
> -        info->total_time = s->total_time;
> -        info->has_downtime = true;
> -        info->downtime = s->downtime;
> -        info->has_setup_time = true;
> -        info->setup_time = s->setup_time;
> -
> +        populate_time_info(info, s);
>          populate_ram_info(info, s);
>          break;
>      case MIGRATION_STATUS_FAILED:
> -- 
> 2.17.1
> 
--
Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK

Re: [Qemu-devel] [PATCH] migration: consolidate time info into populate_time_info
Posted by Dr. David Alan Gilbert 4 years, 8 months ago
* Wei Yang (richardw.yang@linux.intel.com) wrote:
> Consolidate time information fill up into its function for better
> readability.
> 
> Signed-off-by: Wei Yang <richardw.yang@linux.intel.com>

Queued

> ---
>  migration/migration.c | 40 ++++++++++++++++++++++------------------
>  1 file changed, 22 insertions(+), 18 deletions(-)
> 
> diff --git a/migration/migration.c b/migration/migration.c
> index 47fe22d327..18ef933105 100644
> --- a/migration/migration.c
> +++ b/migration/migration.c
> @@ -822,6 +822,25 @@ bool migration_is_setup_or_active(int state)
>      }
>  }
>  
> +static void populate_time_info(MigrationInfo *info, MigrationState *s)
> +{
> +    info->has_status = true;
> +    info->has_setup_time = true;
> +    info->setup_time = s->setup_time;
> +    if (s->state == MIGRATION_STATUS_COMPLETED) {
> +        info->has_total_time = true;
> +        info->total_time = s->total_time;
> +        info->has_downtime = true;
> +        info->downtime = s->downtime;
> +    } else {
> +        info->has_total_time = true;
> +        info->total_time = qemu_clock_get_ms(QEMU_CLOCK_REALTIME) -
> +                           s->start_time;
> +        info->has_expected_downtime = true;
> +        info->expected_downtime = s->expected_downtime;
> +    }
> +}
> +
>  static void populate_ram_info(MigrationInfo *info, MigrationState *s)
>  {
>      info->has_ram = true;
> @@ -907,16 +926,8 @@ static void fill_source_migration_info(MigrationInfo *info)
>      case MIGRATION_STATUS_DEVICE:
>      case MIGRATION_STATUS_POSTCOPY_PAUSED:
>      case MIGRATION_STATUS_POSTCOPY_RECOVER:
> -         /* TODO add some postcopy stats */
> -        info->has_status = true;
> -        info->has_total_time = true;
> -        info->total_time = qemu_clock_get_ms(QEMU_CLOCK_REALTIME)
> -            - s->start_time;
> -        info->has_expected_downtime = true;
> -        info->expected_downtime = s->expected_downtime;
> -        info->has_setup_time = true;
> -        info->setup_time = s->setup_time;
> -
> +        /* TODO add some postcopy stats */
> +        populate_time_info(info, s);
>          populate_ram_info(info, s);
>          populate_disk_info(info);
>          break;
> @@ -925,14 +936,7 @@ static void fill_source_migration_info(MigrationInfo *info)
>          /* TODO: display COLO specific information (checkpoint info etc.) */
>          break;
>      case MIGRATION_STATUS_COMPLETED:
> -        info->has_status = true;
> -        info->has_total_time = true;
> -        info->total_time = s->total_time;
> -        info->has_downtime = true;
> -        info->downtime = s->downtime;
> -        info->has_setup_time = true;
> -        info->setup_time = s->setup_time;
> -
> +        populate_time_info(info, s);
>          populate_ram_info(info, s);
>          break;
>      case MIGRATION_STATUS_FAILED:
> -- 
> 2.17.1
> 
> 
--
Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK