All of lore.kernel.org
 help / color / mirror / Atom feed
From: Wei Liu <wei.liu2@citrix.com>
To: David Vrabel <david.vrabel@citrix.com>
Cc: Wei Liu <wei.liu2@citrix.com>,
	Ian Campbell <ian.campbell@citrix.com>,
	Stefano Stabellini <stefano.stabellini@eu.citrix.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	xen-devel@lists.xen.org,
	Boris Ostrovsky <boris.ostrovsky@oracle.com>
Subject: Re: Xen balloon driver improvement (version 1)
Date: Mon, 27 Oct 2014 11:29:15 +0000	[thread overview]
Message-ID: <20141027112915.GA26175@zion.uk.xensource.com> (raw)
In-Reply-To: <5448D3CF.8090005@citrix.com>

On Thu, Oct 23, 2014 at 11:09:19AM +0100, David Vrabel wrote:
[...]
> > ### Worker thread to coalesce small size pages
> > 
> > Worker thread wakes up periodically to check if there's enough pages
> > in normal size page queue to coalesce into a huge page. If so, it will
> > try to exchange that huge page into a number of normal size pages with
> > XENMEM\_exchange hypercall.
> 
> I don't think you need a new worker thread for this,  the existing page
> migration is already trying to keep the ballooned zone contiguous so
> after migrating pages you need only try and move contiguous ballooned 4k
> pages to the 2M list.
> 

After some more thought on this, a new worker thread is not needed. It's
possible that current balloon thread does both ballooning work and
coalescing work, as they are mutually exclusive workload so one thread
should be enough.

As for moving contiguous ballooned pages from 4K list to 2M list,
unfortunately I see a problem with this proposal: The 4K pages list is
not sorted. Sorting it requires hooking into core balloon driver -- that
is, to grab multiple locks to avoid racing with page migration thread,
which is prone to error.

Wei.

  parent reply	other threads:[~2014-10-27 11:29 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-10-22 16:29 Xen balloon driver improvement (version 1) Wei Liu
2014-10-22 17:32 ` Andrew Cooper
2014-10-22 18:29   ` Wei Liu
2014-10-23 11:00     ` Ian Campbell
2014-10-23 11:05       ` Wei Liu
2014-10-23 11:42       ` Andrew Cooper
2014-10-23 11:44         ` David Vrabel
2014-10-23 10:09 ` David Vrabel
2014-10-23 10:52   ` Stefano Stabellini
2014-10-23 10:58     ` David Vrabel
2014-10-23 11:04   ` Wei Liu
2014-10-27 11:29   ` Wei Liu [this message]
2014-10-23 11:59 ` Ian Campbell
2014-10-23 12:17   ` Wei Liu
2014-10-23 12:27     ` Ian Campbell
2014-10-23 13:00       ` Wei Liu
2014-10-23 14:29         ` Ian Campbell
2014-10-23 14:30 ` Roger Pau Monné
2014-10-23 15:23   ` Wei Liu
2014-10-23 15:57     ` Roger Pau Monné
2014-10-23 16:04       ` Ian Campbell
2014-10-23 16:12         ` Wei Liu
2014-10-24 13:54 ` Dario Faggioli
2014-10-24 14:04   ` Wei Liu

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=20141027112915.GA26175@zion.uk.xensource.com \
    --to=wei.liu2@citrix.com \
    --cc=andrew.cooper3@citrix.com \
    --cc=boris.ostrovsky@oracle.com \
    --cc=david.vrabel@citrix.com \
    --cc=ian.campbell@citrix.com \
    --cc=stefano.stabellini@eu.citrix.com \
    --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.