From: Eric Blake <eblake@redhat.com>
To: Orit Wasserman <owasserm@redhat.com>
Cc: peter.maydell@linaro.org, aliguori@us.ibm.com,
quintela@redhat.com, stefanha@gmail.com, qemu-devel@nongnu.org,
mdroth@linux.vnet.ibm.com, blauwirbel@gmail.com,
Petter Svard <petters@cs.umu.se>,
Benoit Hudzia <benoit.hudzia@sap.com>,
avi@redhat.com, Aidan Shribman <aidan.shribman@sap.com>,
pbonzini@redhat.com, chegu_vinod@hp.com
Subject: Re: [Qemu-devel] [PATCH v12 12/13] Add set_cachesize command
Date: Tue, 19 Jun 2012 13:13:26 -0600 [thread overview]
Message-ID: <4FE0CF56.5020502@redhat.com> (raw)
In-Reply-To: <1340120601-24747-13-git-send-email-owasserm@redhat.com>
[-- Attachment #1: Type: text/plain, Size: 2867 bytes --]
On 06/19/2012 09:43 AM, Orit Wasserman wrote:
> Change XBZRLE cache size in bytes (the size should be a power of 2).
> If XBZRLE cache size is too small there will be many cache miss.
>
> Signed-off-by: Benoit Hudzia <benoit.hudzia@sap.com>
> Signed-off-by: Petter Svard <petters@cs.umu.se>
> Signed-off-by: Aidan Shribman <aidan.shribman@sap.com>
> Signed-off-by: Orit Wasserman <owasserm@redhat.com>
> ---
> +++ b/arch_init.c
> @@ -24,6 +24,7 @@
> #include <stdint.h>
> #include <stdarg.h>
> #include <stdlib.h>
> +#include <math.h>
What for?
> +
> + {
> + .name = "migrate_set_cachesize",
> + .args_type = "value:o",
> + .params = "value",
> + .help = "set cache size (in bytes) for XBZRLE migrations,"
> + "the cache size will be round down to the nearest power of 2.\n"
s/round/rounded/
> + "The cache size effects the number of cache misses."
s/effects/affects/
> +++ b/migration.c
> @@ -22,6 +22,7 @@
> #include "qemu_socket.h"
> #include "block-migration.h"
> #include "qmp-commands.h"
> +#include <math.h>
What for?
>
> //#define DEBUG_MIGRATION
>
> @@ -43,7 +44,7 @@ enum {
>
> #define MAX_THROTTLE (32 << 20) /* Migration speed throttling */
>
> -/* Migration XBZRLE cache size */
> +/* Migration XBZRLE default cache size */
Squash this change into the earlier patch that introduced the #define.
> #define DEFAULT_MIGRATE_CACHE_SIZE (64 * 1024 * 1024)
>
> static NotifierList migration_state_notifiers =
> @@ -498,6 +499,26 @@ void qmp_migrate_cancel(Error **errp)
> migrate_fd_cancel(migrate_get_current());
> }
>
> +void qmp_migrate_set_cachesize(int64_t value, Error **errp)
> +{
> + MigrationState *s = migrate_get_current();
> +
> + /* Check for truncation */
> + if (value != (size_t)value) {
This fails to filter out a value of -1, at least on platforms where
size_t and int64_t are the same size. It might be better to use
explicit comparison:
if (value < 0 || value > SIZE_MAX)
> ##
> +# @migrate_set_cachesize
migrate-set-cachesize - QMP prefers '-' over '_'
> +#
> +# Set XBZRLE cache size
> +#
> +# @value: cache size in bytes
> +#
> +# The size will be round down to the nearest power of 2.
s/round/rounded/
> +
> +Set cache size to be used by XBZRLE migration, the cache size will be round down
s/round/rounded/
> +to the nearset power of 2
s/nearset/nearest/
> +
> +Arguments:
> +
> +- "value": cache size in bytes (json-int)
> +
> +Example:
> +
> +-> { "execute": "migrate_set_cachesize", "arguments": { "value": 512M } }
512M is not a valid json-int. Spell it out as 536870912.
--
Eric Blake eblake@redhat.com +1-919-301-3266
Libvirt virtualization library http://libvirt.org
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 620 bytes --]
next prev parent reply other threads:[~2012-06-19 19:15 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-06-19 15:43 [Qemu-devel] [PATCH v12 00/13] XBZRLE delta for live migration of large memory app Orit Wasserman
2012-06-19 15:43 ` [Qemu-devel] [PATCH v12 01/13] Add MigrationParams structure Orit Wasserman
2012-06-19 16:00 ` Eric Blake
2012-06-19 16:02 ` Orit Wasserman
2012-06-19 15:43 ` [Qemu-devel] [PATCH v12 02/13] Add migration capabilites Orit Wasserman
2012-06-19 16:27 ` Eric Blake
2012-06-19 15:43 ` [Qemu-devel] [PATCH v12 03/13] Add XBZRLE documentation Orit Wasserman
2012-06-19 16:46 ` Eric Blake
2012-06-19 15:43 ` [Qemu-devel] [PATCH v12 04/13] Add cache handling functions Orit Wasserman
2012-06-19 16:51 ` Eric Blake
2012-06-19 15:43 ` [Qemu-devel] [PATCH v12 05/13] Add uleb encoding/decoding functions Orit Wasserman
2012-06-19 16:59 ` Eric Blake
2012-06-19 15:43 ` [Qemu-devel] [PATCH v12 06/13] Add save_block_hdr function Orit Wasserman
2012-06-19 15:43 ` [Qemu-devel] [PATCH v12 07/13] Add debugging infrastructure Orit Wasserman
2012-06-19 15:43 ` [Qemu-devel] [PATCH v12 08/13] Change ram_save_block to return -1 if there are no more changes Orit Wasserman
2012-06-19 15:43 ` [Qemu-devel] [PATCH v12 09/13] Add migration_end function Orit Wasserman
2012-06-19 15:43 ` [Qemu-devel] [PATCH v12 10/13] Add xbzrle_encode_buffer and xbzrle_decode_buffer functions Orit Wasserman
2012-06-19 18:08 ` Eric Blake
2012-06-19 15:43 ` [Qemu-devel] [PATCH v12 11/13] Add XBZRLE to ram_save_block and ram_save_live Orit Wasserman
2012-06-19 18:50 ` Eric Blake
2012-06-19 15:43 ` [Qemu-devel] [PATCH v12 12/13] Add set_cachesize command Orit Wasserman
2012-06-19 19:13 ` Eric Blake [this message]
2012-06-19 15:43 ` [Qemu-devel] [PATCH v12 13/13] Add XBZRLE statistics Orit Wasserman
2012-06-19 19:20 ` Eric Blake
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4FE0CF56.5020502@redhat.com \
--to=eblake@redhat.com \
--cc=aidan.shribman@sap.com \
--cc=aliguori@us.ibm.com \
--cc=avi@redhat.com \
--cc=benoit.hudzia@sap.com \
--cc=blauwirbel@gmail.com \
--cc=chegu_vinod@hp.com \
--cc=mdroth@linux.vnet.ibm.com \
--cc=owasserm@redhat.com \
--cc=pbonzini@redhat.com \
--cc=peter.maydell@linaro.org \
--cc=petters@cs.umu.se \
--cc=qemu-devel@nongnu.org \
--cc=quintela@redhat.com \
--cc=stefanha@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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.