All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] migration: Show downtime during postcopy phase
@ 2022-12-15 22:24 Peter Xu
  2022-12-20 16:42 ` Leonardo Bras Soares Passos
  0 siblings, 1 reply; 2+ messages in thread
From: Peter Xu @ 2022-12-15 22:24 UTC (permalink / raw)
  To: qemu-devel
  Cc: Juan Quintela, Leonardo Bras Soares Passos,
	Dr . David Alan Gilbert, peterx

The downtime should be displayed during postcopy phase because the
switchover phase is done.  OTOH it's weird to show "expected downtime"
which can confuse what does that mean if the switchover has already
happened anyway.

This is a slight ABI change on QMP, but I assume it shouldn't affect
anyone.

Signed-off-by: Peter Xu <peterx@redhat.com>
---
 migration/migration.c | 14 ++++++++++++--
 1 file changed, 12 insertions(+), 2 deletions(-)

diff --git a/migration/migration.c b/migration/migration.c
index 64f74534e2..993782598f 100644
--- a/migration/migration.c
+++ b/migration/migration.c
@@ -1077,20 +1077,30 @@ bool migration_is_running(int state)
     }
 }
 
+static bool migrate_show_downtime(MigrationState *s)
+{
+    return (s->state == MIGRATION_STATUS_COMPLETED) || migration_in_postcopy();
+}
+
 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;
+    }
+
+    if (migrate_show_downtime(s)) {
+        info->has_downtime = true;
+        info->downtime = s->downtime;
+    } else {
         info->has_expected_downtime = true;
         info->expected_downtime = s->expected_downtime;
     }
-- 
2.37.3



^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH] migration: Show downtime during postcopy phase
  2022-12-15 22:24 [PATCH] migration: Show downtime during postcopy phase Peter Xu
@ 2022-12-20 16:42 ` Leonardo Bras Soares Passos
  0 siblings, 0 replies; 2+ messages in thread
From: Leonardo Bras Soares Passos @ 2022-12-20 16:42 UTC (permalink / raw)
  To: Peter Xu; +Cc: qemu-devel, Juan Quintela, Dr . David Alan Gilbert

On Thu, Dec 15, 2022 at 7:24 PM Peter Xu <peterx@redhat.com> wrote:
>
> The downtime should be displayed during postcopy phase because the
> switchover phase is done.  OTOH it's weird to show "expected downtime"
> which can confuse what does that mean if the switchover has already
> happened anyway.
>
> This is a slight ABI change on QMP, but I assume it shouldn't affect
> anyone.
>
> Signed-off-by: Peter Xu <peterx@redhat.com>
> ---
>  migration/migration.c | 14 ++++++++++++--
>  1 file changed, 12 insertions(+), 2 deletions(-)
>
> diff --git a/migration/migration.c b/migration/migration.c
> index 64f74534e2..993782598f 100644
> --- a/migration/migration.c
> +++ b/migration/migration.c
> @@ -1077,20 +1077,30 @@ bool migration_is_running(int state)
>      }
>  }
>
> +static bool migrate_show_downtime(MigrationState *s)
> +{
> +    return (s->state == MIGRATION_STATUS_COMPLETED) || migration_in_postcopy();
> +}
> +
>  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;
> +    }
> +
> +    if (migrate_show_downtime(s)) {
> +        info->has_downtime = true;
> +        info->downtime = s->downtime;
> +    } else {
>          info->has_expected_downtime = true;
>          info->expected_downtime = s->expected_downtime;
>      }
> --
> 2.37.3
>

FWIW:
Reviewed-by: Leonardo Bras <leobras@redhat.com>



^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2022-12-20 18:26 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-12-15 22:24 [PATCH] migration: Show downtime during postcopy phase Peter Xu
2022-12-20 16:42 ` Leonardo Bras Soares Passos

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.