[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 3/5] migration: Print statistics about the numbe
From: |
Eric Blake |
Subject: |
Re: [Qemu-devel] [PATCH 3/5] migration: Print statistics about the number of remaining target pages |
Date: |
Fri, 2 Jun 2017 10:15:41 -0500 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.1.0 |
On 06/01/2017 05:08 PM, Juan Quintela wrote:
> Signed-off-by: Juan Quintela <address@hidden>
> ---
> migration/migration.c | 4 +++-
> migration/ram.c | 4 ++--
> migration/ram.h | 2 +-
> qapi-schema.json | 6 +++++-
> 4 files changed, 11 insertions(+), 5 deletions(-)
>
> diff --git a/migration/migration.c b/migration/migration.c
> index ea3d41c..2c13217 100644
> --- a/migration/migration.c
> +++ b/migration/migration.c
> @@ -518,7 +518,9 @@ static void populate_ram_info(MigrationInfo *info,
> MigrationState *s)
> }
>
> if (s->state != MIGRATION_STATUS_COMPLETED) {
> - info->ram->remaining = ram_bytes_remaining();
> + info->ram->remaining_pages = ram_pages_remaining();
> + info->ram->remaining = ram_pages_remaining() *
> + qemu_target_page_size();
Why not the opposite direction, of:
info->ram->remaining_pages = ram_bytes_remaining() /
qemu_target_page_size();
info->ram->remaining = ram_bytes_remaining();
?
> +++ b/migration/ram.h
> @@ -41,7 +41,7 @@ uint64_t xbzrle_mig_pages_cache_miss(void);
> double xbzrle_mig_cache_miss_rate(void);
> uint64_t xbzrle_mig_pages_overflow(void);
> uint64_t ram_bytes_transferred(void);
> -uint64_t ram_bytes_remaining(void);
> +uint64_t ram_pages_remaining(void);
> uint64_t ram_dirty_sync_count(void);
> uint64_t ram_dirty_pages_rate(void);
> uint64_t ram_postcopy_requests(void);
I know we already have a mishmash of which interfaces are byte-based vs.
page-based, but using byte-based everywhere seems like a better goal,
and this feels like we are going backwards from that goal.
> diff --git a/qapi-schema.json b/qapi-schema.json
> index 4b50b65..ff1c048 100644
> --- a/qapi-schema.json
> +++ b/qapi-schema.json
> @@ -601,6 +601,9 @@
> # @page-size: The number of bytes per page for the various page-based
> # statistics (since 2.10)
> #
> +# @remaining-pages: amount of pages remaining to be transferred to the
> target VM
> +# (since 2.10)
> +#
> # Since: 0.14.0
> ##
> { 'struct': 'MigrationStats',
> @@ -608,7 +611,8 @@
> 'duplicate': 'int', 'skipped': 'int', 'normal': 'int',
> 'normal-bytes': 'int', 'dirty-pages-rate' : 'int',
> 'mbps' : 'number', 'dirty-sync-count' : 'int',
> - 'postcopy-requests' : 'int', 'page-size' : 'int' } }
> + 'postcopy-requests' : 'int', 'page-size' : 'int',
> + 'remaining-pages' : 'int' } }
We already have 'remaining'; why do we need a redundant stat
'remaining-pages'?
--
Eric Blake, Principal Software Engineer
Red Hat, Inc. +1-919-301-3266
Virtualization: qemu.org | libvirt.org
signature.asc
Description: OpenPGP digital signature