On 08/18/2012 02:17 PM, Juan Quintela wrote:
> Signed-off-by: Juan Quintela <quint...@redhat.com>
> ---
> hmp.c | 4 ++--
> migration.c | 6 +++---
> qapi-schema.json | 14 +++++++-------
> qmp-commands.hx | 6 +++---
> 4 files changed, 15 insertions(+), 15 deletions(-)
>
> diff --git a/hmp.c b/hmp.c
> index a9d5675..81c8acb 100644
> --- a/hmp.c
> +++ b/hmp.c
> @@ -149,6 +149,8 @@ void hmp_info_migrate(Monitor *mon)
>
> if (info->has_status) {
> monitor_printf(mon, "Migration status: %s\n", info->status);
> + monitor_printf(mon, "total time: %" PRIu64 " milliseconds\n",
> + info->total_time);
> }
>
> if (info->has_ram) {
> @@ -158,8 +160,6 @@ void hmp_info_migrate(Monitor *mon)
> info->ram->remaining >> 10);
> monitor_printf(mon, "total ram: %" PRIu64 " kbytes\n",
> info->ram->total >> 10);
> - monitor_printf(mon, "total time: %" PRIu64 " milliseconds\n",
> - info->ram->total_time);
> monitor_printf(mon, "duplicate: %" PRIu64 " pages\n",
> info->ram->duplicate);
> monitor_printf(mon, "normal: %" PRIu64 " pages\n",
> diff --git a/migration.c b/migration.c
> index 653a3c1..8e4c508 100644
> --- a/migration.c
> +++ b/migration.c
> @@ -166,14 +166,14 @@ MigrationInfo *qmp_query_migrate(Error **errp)
> case MIG_STATE_ACTIVE:
> info->has_status = true;
> info->status = g_strdup("active");
> + info->total_time = qemu_get_clock_ms(rt_clock)
> + - s->total_time;
>
> info->has_ram = true;
> info->ram = g_malloc0(sizeof(*info->ram));
> info->ram->transferred = ram_bytes_transferred();
> info->ram->remaining = ram_bytes_remaining();
> info->ram->total = ram_bytes_total();
> - info->ram->total_time = qemu_get_clock_ms(rt_clock)
> - - s->total_time;
> info->ram->duplicate = dup_mig_pages_transferred();
> info->ram->normal = norm_mig_pages_transferred();
> info->ram->normal_bytes = norm_mig_bytes_transferred();
> @@ -193,13 +193,13 @@ MigrationInfo *qmp_query_migrate(Error **errp)
>
> info->has_status = true;
> info->status = g_strdup("completed");
> + info->total_time = s->total_time;
>
> info->has_ram = true;
> info->ram = g_malloc0(sizeof(*info->ram));
> info->ram->transferred = ram_bytes_transferred();
> info->ram->remaining = 0;
> info->ram->total = ram_bytes_total();
> - info->ram->total_time = s->total_time;
> info->ram->duplicate = dup_mig_pages_transferred();
> info->ram->normal = norm_mig_pages_transferred();
> info->ram->normal_bytes = norm_mig_bytes_transferred();
> diff --git a/qapi-schema.json b/qapi-schema.json
> index 3d2b2d1..f83cf22 100644
> --- a/qapi-schema.json
> +++ b/qapi-schema.json
> @@ -290,10 +290,6 @@
> #
> # @total: total amount of bytes involved in the migration process
> #
> -# @total-time: total amount of ms since migration started. If
> -# migration has ended, it returns the total migration
> -# time. (since 1.2)
> -#
> # @duplicate: number of duplicate pages (since 1.2)
> #
> # @normal : number of normal pages (since 1.2)
> @@ -304,8 +300,7 @@
> ##
> { 'type': 'MigrationStats',
> 'data': {'transferred': 'int', 'remaining': 'int', 'total': 'int' ,
> - 'total-time': 'int', 'duplicate': 'int', 'normal': 'int',
> - 'normal-bytes': 'int' } }
> + 'duplicate': 'int', 'normal': 'int', 'normal-bytes': 'int' } }
>
> ##
> # @XBZRLECacheStats
> @@ -350,12 +345,17 @@
> # migration statistics, only returned if XBZRLE feature is on
> and
> # status is 'active' or 'completed' (since 1.2)
> #
> +# @total-time: total amount of milliseconds since migration started.
> +# If migration has ended, it returns the total migration
> +# time. (since 1.2)
> +#
> # Since: 0.14.0
> ##
> { 'type': 'MigrationInfo',
> 'data': {'*status': 'str', '*ram': 'MigrationStats',
> '*disk': 'MigrationStats',
> - '*xbzrle-cache': 'XBZRLECacheStats'} }
> + '*xbzrle-cache': 'XBZRLECacheStats',
> + 'total-time': 'int'} }
>
> ##
> # @query-migrate
> diff --git a/qmp-commands.hx b/qmp-commands.hx
> index 2ce4ce6..8671bf3 100644
> --- a/qmp-commands.hx
> +++ b/qmp-commands.hx
> @@ -2239,14 +2239,14 @@ The main json-object contains the following:
>
> - "status": migration status (json-string)
> - Possible values: "active", "completed", "failed", "cancelled"
> +- "total-time": total amount of ms since migration started. If
> + migration has ended, it returns the total migration
> + time (json-int)
> - "ram": only present if "status" is "active", it is a json-object with the
> following RAM information (in bytes):
> - "transferred": amount transferred (json-int)
> - "remaining": amount remaining (json-int)
> - "total": total (json-int)
> - - "total-time": total amount of ms since migration started. If
> - migration has ended, it returns the total migration
> time
> - (json-int)
> - "duplicate": number of duplicated pages (json-int)
> - "normal" : number of normal pages transferred (json-int)
> - "normal-bytes" : number of normal bytes transferred (json-int)
>
Reviewed-by: Orit Wasserman <owass...@redhat.com>