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

Re: [Xen-devel] Bug - Xen 4.3 - xl ignores maxmem setting in domU config file



On Tue, Oct 29, 2013 at 10:59:21AM +0000, Wei Liu wrote:
> On Tue, Oct 29, 2013 at 10:26:00AM +0000, James Dingwall wrote:
> > Hi,
> > 
> > I am having some memory ballooning problems which only seem to have 
> > appeared since upgrading to Xen 4.3.  In short if I set the domU 
> > configuration file as:
> > 
> > memory = 512
> > maxmem = 1024
> > 
> > Then even under memory pressure the guest domain does not balloon past 
> > the value of the 'memory' parameter.
> > 
> > xl info shows plenty of available memory in dom0:
> > total_memory           : 32767
> > free_memory            : 12445
> > 
> > 
> > xl list -l on the domain shows:
> >      "max_memkb": 1048576,
> >      "target_memkb": 524288,
> > 
> 
> This is parsed from your config file so they should always look OK to
> you.
> 
> Does the following patch help?
> 
> Git blame tells me the change to set maxmem to target_memkb was
> introduced 4 years ago so I suspect there's reason to do that. If we
> cannot fix it here we need to insert the corresponding call later.
> 
> Wei.
> ----8<---
> diff --git a/tools/libxl/libxl_dom.c b/tools/libxl/libxl_dom.c
> index 356f920..fb7965d 100644
> --- a/tools/libxl/libxl_dom.c
> +++ b/tools/libxl/libxl_dom.c
> @@ -235,7 +235,7 @@ int libxl__build_pre(libxl__gc *gc, uint32_t domid,
>      libxl_domain_set_nodeaffinity(ctx, domid, &info->nodemap);
>      libxl_set_vcpuaffinity_all(ctx, domid, info->max_vcpus, &info->cpumap);
>  
> -    xc_domain_setmaxmem(ctx->xch, domid, info->target_memkb + 
> LIBXL_MAXMEM_CONSTANT);
> +    xc_domain_setmaxmem(ctx->xch, domid, info->max_memkb + 
> LIBXL_MAXMEM_CONSTANT);
>      xs_domid = xs_read(ctx->xsh, XBT_NULL, "/tool/xenstored/domid", NULL);
>      state->store_domid = xs_domid ? atoi(xs_domid) : 0;
>      free(xs_domid);
> 

This patch solves the problem for me where maxmem in config file is not 
honoured during domain creation.  With it applied xl top immediately 
shows the correct value in the MAXMEM column.

I can see that xl_cmdimpl.c safely sets max_memkb for the case where the 
configuration file does not define maxmem.

Thanks,
James



-- 
------------------------------------------------------------------------
James Dingwall
e: james@xxxxxxxxxxxxxx
w: http://www.dingwall.me.uk/
------------------------------------------------------------------------

_______________________________________________
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®.