[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] domain creation vs querying free memory (xend and xl)

On Tue, 2012-10-02 at 10:10 +0100, Tim Deegan wrote:
> At 13:03 -0700 on 01 Oct (1349096617), Dan Magenheimer wrote:
> > Bearing in mind that I know almost nothing about xl or
> > the tools layer, and that, as a result, I tend to look
> > for hypervisor solutions, I'm thinking it's not possible to
> > solve this without direct participation of the hypervisor anyway,
> > at least while ensuring the solution will successfully
> > work with any memory technology that involves ballooning
> > with the possibility of overcommit (i.e. tmem, page sharing
> > and host-swapping, manual ballooning, PoD)...  EVEN if the
> > toolset is single threaded (i.e. only one domain may
> > be created at a time, such as xapi). [1]
> TTBOMK, Xapi actually _has_ solved this problem, even with ballooning
> and PoD.  I don't know if they have any plans to support sharing,
> swapping or tmem, though.
> Adding a 'reservation' of free pages that may only be allocated by a
> given domain should be straightforward enough, but I'm not sure it helps
> much.  In the 'balloon-to-fit' model where all memory is already
> allocated to some domain (or tmem), some part of the toolstack needs to
> sort out freeing up the memory before allocating it to another VM.
> Surely that component needs to handle the exclusion too - otherwise a
> series of small VM creations could stall a large one indefinitely.

xl today has a big lock around domain creation, which solves the
original issue which Dan describes but has the issue which you describe.

IIRC Dario was going to be looking at adding something to (one or more
of) xen, libxl and xl to allow this to be handled more cleverly as part
of the NUMA work in 4.3.

I think that the intention was still that there would be a critical
section within all of the colluding xl instances where memory was set
aside for a particular domain, possibly with hypervisor assistance.


Xen-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.