All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Michael S. Tsirkin" <mst@redhat.com>
To: Eric Blake <eblake@redhat.com>
Cc: aliguori@us.ibm.com, quintela@redhat.com, qemu-devel@nongnu.org,
	mrhines@linux.vnet.ibm.com, owasserm@redhat.com,
	abali@us.ibm.com, mrhines@us.ibm.com, gokul@us.ibm.com,
	pbonzini@redhat.com
Subject: Re: [Qemu-devel] [PULL v4 07/11] rdma: introduce capability for chunk registration
Date: Sat, 20 Apr 2013 20:02:40 +0300	[thread overview]
Message-ID: <20130420170240.GA16115@redhat.com> (raw)
In-Reply-To: <51706E9C.9@redhat.com>

On Thu, Apr 18, 2013 at 04:07:24PM -0600, Eric Blake wrote:
> On 04/17/2013 05:07 PM, mrhines@linux.vnet.ibm.com wrote:
> > From: "Michael R. Hines" <mrhines@us.ibm.com>
> > 
> > This capability allows you to disable dynamic chunk registration
> > for better throughput on high-performance links.
> > 
> > It is enabled by default.
> > 
> > Signed-off-by: Michael R. Hines <mrhines@us.ibm.com>
> > ---
> >  migration.c      |   10 ++++++++++
> >  qapi-schema.json |    8 +++++++-
> >  2 files changed, 17 insertions(+), 1 deletion(-)
> 
> >  #
> > +# @x-chunk-register-destination: (since 1.5) RDMA option which controls whether
> > +#          or not the entire VM memory footprint is mlock() on demand or all at once.
> > +#          Refer to docs/rdma.txt for more advice on when to take advantage option.
> 
> s/take advantage/use this/
> 
> > +#          Enabled by default, and will be renamed to 'chunk-register-destination' 
> > +#          after experimental testing is complete.
> 
> I wouldn't promise a rename - after all, testing may prove that we can
> settle on enough heuristics to set this appropriately without needing a
> user option, even for the workloads where it makes a difference.  Thus,
> I think better wording might be:
> 
> Enabled by default.  Experimental: may be renamed or removed after
> further testing is complete.
> 
> Sorry for not thinking about this earlier, but typically you want a
> capability bit to default to 0 - it's much easier to assume that a bit
> not present behaves the same as a bit that is present and 0.  Or put
> another way, a older management app that asks for all enabled
> capabilities on a newer qemu has an easier time ignoring 0 bits that it
> doesn't recognize (oh, some new feature I don't know about, but it isn't
> on, so it can't hurt) than it does ignoring 1 bits (oh, a feature I
> don't recognize, but it's enabled - will it mess up my migration?).
> Since this is a bool, I would much rather can we rename the capability
> to express the opposite sense, and default it to 0.  I'm not even sure
> from your description here whether 'true' means 'mlock() on demand' or
> 'all at once', just that I'm supposed to read rdma.txt to decide if I
> want to move away from the default.
> 
> /me reads patch 11 again... and wonders why the docs came last instead
> of first in the series...
> 
> I guess the opposite sense could be named 'x-rdma-pin-all'; default
> false means to do chunk registration and release,

chunk release only happens after migration is complete unfortunately.
This means that eventually all initialized memory is pinned, regardless
of the setting (this is fixable but there's no plan to fix this, at this
point). So pin-all might be misleading to some.

I agree 'chunk' is unnecessarily low level though.
The only difference ATM is pinning of uninitialized memory so I think a
better name would be 'x-rdma-pin-uninitialized' or some such.

> true means to pin all
> memory up front.
> 
> -- 
> Eric Blake   eblake redhat com    +1-919-301-3266
> Libvirt virtualization library http://libvirt.org
> 

  parent reply	other threads:[~2013-04-20 18:01 UTC|newest]

Thread overview: 54+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-04-17 23:07 [Qemu-devel] [PULL v4 00/11] rdma: migration support mrhines
2013-04-17 23:07 ` [Qemu-devel] [PULL v4 01/11] rdma: export yield_until_fd_readable() mrhines
2013-04-17 23:07 ` [Qemu-devel] [PULL v4 02/11] rdma: introduce qemu_ram_foreach_block() mrhines
2013-04-17 23:07 ` [Qemu-devel] [PULL v4 03/11] rdma: introduce qemu_file_mode_is_not_valid() mrhines
2013-04-17 23:07 ` [Qemu-devel] [PULL v4 04/11] rdma: export ram_handle_compressed() mrhines
2013-04-17 23:07 ` [Qemu-devel] [PULL v4 05/11] rdma: export qemu_fflush() mrhines
2013-04-17 23:07 ` [Qemu-devel] [PULL v4 06/11] rdma: new QEMUFileOps hooks mrhines
2013-04-17 23:07 ` [Qemu-devel] [PULL v4 07/11] rdma: introduce capability for chunk registration mrhines
2013-04-18 22:07   ` Eric Blake
2013-04-19  0:34     ` Michael R. Hines
2013-04-20 17:02     ` Michael S. Tsirkin [this message]
2013-04-21 13:19       ` Paolo Bonzini
2013-04-21 14:17         ` Michael S. Tsirkin
2013-04-21 17:19           ` Michael R. Hines
2013-04-21 19:13             ` Michael S. Tsirkin
2013-04-21 16:05         ` Michael R. Hines
2013-04-21 18:59           ` Michael S. Tsirkin
2013-04-21 19:55             ` Michael R. Hines
2013-04-21 16:06         ` Michael R. Hines
2013-04-17 23:07 ` [Qemu-devel] [PULL v4 08/11] rdma: core logic mrhines
2013-04-18  7:55   ` Paolo Bonzini
2013-04-18 13:57     ` Michael R. Hines
2013-04-18  7:58   ` Michael S. Tsirkin
2013-04-18 13:59     ` Michael R. Hines
2013-04-18 13:06       ` Michael S. Tsirkin
2013-04-18 14:14         ` Michael R. Hines
2013-04-18 13:32           ` Michael S. Tsirkin
2013-04-18 14:45             ` Michael R. Hines
2013-04-18 13:52               ` Michael S. Tsirkin
2013-04-18 15:14                 ` Anthony Liguori
2013-04-18 14:53             ` [Qemu-devel] licensing of IBM contributions to QEMU (was Re: [PULL v4 08/11] rdma: core logic) Paolo Bonzini
2013-04-18 19:15               ` Michael R. Hines
2013-04-19  0:35               ` Anthony Liguori
2013-04-18  8:44   ` [Qemu-devel] [PULL v4 08/11] rdma: core logic Orit Wasserman
2013-04-18 13:54     ` Michael R. Hines
2013-04-18 15:51       ` Orit Wasserman
2013-04-18 19:41         ` Michael R. Hines
2013-04-18 22:12   ` Eric Blake
2013-04-19  0:35     ` Michael R. Hines
2013-04-17 23:07 ` [Qemu-devel] [PULL v4 09/11] rdma: send pc.ram mrhines
2013-04-17 23:07 ` [Qemu-devel] [PULL v4 10/11] rdma: print out throughput while debugging mrhines
2013-04-17 23:07 ` [Qemu-devel] [PULL v4 11/11] rdma: add documentation mrhines
2013-04-18  6:55   ` Michael S. Tsirkin
2013-04-19  0:57     ` Michael R. Hines
2013-04-17 23:39 ` [Qemu-devel] [PULL v4 00/11] rdma: migration support Anthony Liguori
2013-04-18 13:46   ` Michael R. Hines
2013-04-18  7:00 ` Michael S. Tsirkin
2013-04-18 13:49   ` Michael R. Hines
2013-04-18 13:50     ` Michael S. Tsirkin
2013-04-18 19:17       ` Michael R. Hines
2013-04-18 20:12         ` Michael S. Tsirkin
2013-04-18 21:28           ` Michael R. Hines
2013-04-18 20:33             ` Michael S. Tsirkin
2013-04-18 14:36   ` Michael R. Hines

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=20130420170240.GA16115@redhat.com \
    --to=mst@redhat.com \
    --cc=abali@us.ibm.com \
    --cc=aliguori@us.ibm.com \
    --cc=eblake@redhat.com \
    --cc=gokul@us.ibm.com \
    --cc=mrhines@linux.vnet.ibm.com \
    --cc=mrhines@us.ibm.com \
    --cc=owasserm@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=quintela@redhat.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.