All of lore.kernel.org
 help / color / mirror / Atom feed
From: Dario Faggioli <dario.faggioli@citrix.com>
To: Tim Deegan <tim@xen.org>
Cc: Dan Magenheimer <dan.magenheimer@oracle.com>,
	Ian Campbell <Ian.Campbell@citrix.com>,
	George Dunlap <George.Dunlap@eu.citrix.com>,
	Andrew Cooper <Andrew.Cooper3@citrix.com>,
	Juergen Gross <juergen.gross@ts.fujitsu.com>,
	Olaf Hering <olaf@aepfle.de>, xen-devel <xen-devel@lists.xen.org>,
	David Vrabel <dvrabel@cantab.net>,
	Keir Fraser <keir.xen@gmail.com>,
	Andres Lagar-Cavilla <andres@lagarcavilla.org>,
	Jan Beulich <JBeulich@suse.com>,
	Roger Pau Monne <roger.pau@citrix.com>
Subject: Re: [PATCH 6 of 8 [RFC]] libxc: introduce xc_domain_move_memory
Date: Mon, 6 May 2013 19:29:44 +0200	[thread overview]
Message-ID: <1367861384.2958.79.camel@Solace> (raw)
In-Reply-To: <20130502143209.GL65547@ocelot.phlegethon.org>


[-- Attachment #1.1: Type: text/plain, Size: 1783 bytes --]

On gio, 2013-05-02 at 15:32 +0100, Tim Deegan wrote:
> Hi,
> 
Hi Tim,

Thanks for looking at this! :-)

> This looks like a promising start.  Two thoughts:
> 
> 1. You currently move memory into a bufferm free it, allocate new memory
>    and restore the contents.  Copying directly from old to new would be
>    significantly faster, and you could do it for _most_ batches:
>    - copy old batch 0 to the backup buffer; free old batch 0;
>    - allocate new batch 1; copy batch 1 directly; free old batch 1;
>      ...
>    - allocate new batch n; copy batch n directly; free old batch n;
>    - allocate new batch 0; copy batch 0 from the backup buffer.
> 
I see what you mean, and I think it's feasible. One thing I noticed (and
not yet tracked down properly, actually) is some sort of "latency" in
freeing the pages... I'll investigate that better and go for what you
suggest if possible.

> 2. Clearing all the _PAGE_PRESENT bits with mmu-update
>    hypercalls must be overkill.  It ought to be possible to drop
>    those pages' typecounts to 0 by unpinning them and then resetting all
>    the vcpus.  The you should be able to just update the contents
>    with normal writes and re-pin afterwards.
> 
Yeah, I thought the same, but haven't found a sensible way of making
that happen yet. However, the 'reset all vcpus' thing definitely needs
more attention (and I'm investigating it right in these days). I'll keep
digging and let you know what I find.

Thanks again,
Dario

-- 
<<This happens because I choose it to happen!>> (Raistlin Majere)
-----------------------------------------------------------------
Dario Faggioli, Ph.D, http://about.me/dario.faggioli
Senior Software Engineer, Citrix Systems R&D Ltd., Cambridge (UK)


[-- Attachment #1.2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 198 bytes --]

[-- Attachment #2: Type: text/plain, Size: 126 bytes --]

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel

  parent reply	other threads:[~2013-05-06 17:29 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-04-09  2:49 [PATCH 0 of 8 [RFC]] Move all the memory of a domain Dario Faggioli
2013-04-09  2:49 ` [PATCH 1 of 8 [RFC]] xl: allow for node-wise specification of vcpu pinning Dario Faggioli
2013-04-09  2:49 ` [PATCH 2 of 8 [RFC]] xl: allow for changing NUMA node affinity on-line Dario Faggioli
2013-04-09  2:49 ` [PATCH 3 of 8 [RFC]] libxc: introduce xc_domain_get_address_size Dario Faggioli
2013-04-09  2:49 ` [PATCH 4 of 8 [RFC]] libxc: introduce xc_map_domain_meminfo (and xc_unmap_domain_meminfo) Dario Faggioli
2013-04-09  2:49 ` [PATCH 5 of 8 [RFC]] libxc: allow for ctxt to be NULL in xc_vcpu_setcontext Dario Faggioli
2013-04-09  2:49 ` [PATCH 6 of 8 [RFC]] libxc: introduce xc_domain_move_memory Dario Faggioli
2013-04-09  5:23   ` Juergen Gross
2013-04-09  6:56     ` Dario Faggioli
2013-04-09  8:13       ` Juergen Gross
2013-04-09  8:51         ` Dario Faggioli
2013-04-09  9:16           ` Juergen Gross
2013-04-09 17:43   ` Dan Magenheimer
2013-04-11 14:16     ` Dario Faggioli
2013-05-02 14:32   ` Tim Deegan
2013-05-02 15:07     ` George Dunlap
2013-05-02 15:13       ` Tim Deegan
2013-05-06 17:37         ` Dario Faggioli
2013-05-06 17:29     ` Dario Faggioli [this message]
2013-04-09  2:49 ` [PATCH 7 of 8 [RFC]] libxl: introduce libxl_domain_move_memory Dario Faggioli
2013-04-09  2:49 ` [PATCH 8 of 8 [RFC]] tools/misc: introduce xen-mfndump Dario Faggioli

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=1367861384.2958.79.camel@Solace \
    --to=dario.faggioli@citrix.com \
    --cc=Andrew.Cooper3@citrix.com \
    --cc=George.Dunlap@eu.citrix.com \
    --cc=Ian.Campbell@citrix.com \
    --cc=JBeulich@suse.com \
    --cc=andres@lagarcavilla.org \
    --cc=dan.magenheimer@oracle.com \
    --cc=dvrabel@cantab.net \
    --cc=juergen.gross@ts.fujitsu.com \
    --cc=keir.xen@gmail.com \
    --cc=olaf@aepfle.de \
    --cc=roger.pau@citrix.com \
    --cc=tim@xen.org \
    --cc=xen-devel@lists.xen.org \
    /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.