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

Re: [Xen-devel] [PATCH 0/4] fix freemem loop



On Thursday, March 05, 2015 05:49:35 PM Ian Campbell wrote:
> On Tue, 2015-03-03 at 11:08 +0000, Stefano Stabellini wrote:
> > Hi all,
> > 
> > this patch series fixes the freemem loop on machines with very large
> > amount of memory, where the current wait time is not enough.
> > 
> > In order to be able to handle arbitrarly large amount of ram, we
> > implement in libxl_wait_for_memory_target a policy of waiting until dom0
> > is making progress.
> 
> What is the impact of the libxl API change made here on other callers,
> in particular libvirt?

This change will have one interesting effect on libvirt. Currently, 
libxlDomainFreeMem loops 3 times, then returns 0 (if no errors are 
encountered). This means that domain creation starts before dom0 finishes 
ballooning (unlike xl's previous behavior, which would fail).

With this change, domain creation through virsh will wait (in 
libxl_wait_for_memory_target) until dom0 finishes ballooning. This should 
result in an increase in the speed of the domain starting, as there will not 
be memory contention between the two processes.

The libvirt side calls libxl_wait_for_memory_target with a 1 second timeout - 
which doesn't leave a huge amount of room for slow memory allocation. This 
timeout, as well as the logic in general, should be changed to match the new 
xl behavior (IMO). I expect this to really only matter when dealing with large 
domains.

-Mike

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


 


Rackspace

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