[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] a ton of kernel issues
On 14.12.2011 02:30, Ian Campbell wrote: On Tue, 2011-12-13 at 20:59 +0000, George Shuklin wrote:On 13.12.2011 17:37, Ian Campbell wrote:This should work if memory hotplug is enabled. It is also supported without memory hotplug but this requires that the tools supply a suitable memory map that covers the largest memory-static-max limit you wish to support. I'm not sure if the tools can do this yet.With xl this should work using the "maxmem" option. (xm probably uses the same name)I'm not sure what maxmem domaxmem sets static-max for the guest in the xl toolstack. Well, I understand that, I simply don't understand what maxmem do with domain in xen (the hypervisor part). My hypothesis is just put a limit for amount of allocated PFN for domain. but I can say, this option does not allow to go beyond initial boot memory for pv_ops kernels and beyond static-max memory for -xen kernel.AFAIK the toolstack support for memory hotplug (i.e. growing beyond static-max) does not yet exist. As far as I know toolstack is not really do some work for this (if I wrong I'll be really appreciated for information). For memory control we need to set maxmem and send request to guest xenballon for new target (via xenstore). This works without running xapi and squeezed (of course, for VM start/reboot we need them), but simple memory management can be done manually without helps of xapi/squeezed. (Again, if I wrong, I do really like to now where I wrong). As far as I understand xapi writing dynamic-min, dynamic-max to xenstore for domain and call squeezed via xenstore-rpc to rebalance memory, and squeezed read request, read those values, calculate new target and writes it to xenstore for each domain. My current description (I can be wrong) of stuff happens during memory resizing: 1) Set up maxmem 2) Send via memory/target target to xenballoon 3) Xenballoon request new memory from hypervisor (or return back some of)4) Xenballoon manipulate with domU memory management to allow use (or snatch away) memory pages. I am very well understand that, so I've tested this (not with all kernel versions) with normal XCP setup with default memory management: set up vm, make dyn-max=1GiB,static-max=2GiB, start vm, use xe vm-memory-target-set to 2GiB - and memory is still 1GiB. I've tested this with few pv_ops kernels, including those on xs-tools.iso (tested on XCP 0.5, 1.0 and 1.1, and even on XenServer 6) - same result.I tested it with following python script (under xcp, with shutdowned squeezed to be sure not get 'reballanced'): xc.domain_setmaxmem(domid,memory) xs.write("","/local/domain/%i/memory/dynamic-min"%domid,str(memory*1024)) xs.write("","/local/domain/%i/memory/dynamic-max"%domid,str(memory*1024)) xs.write("","/local/domain/%i/memory/static-max"%domid,str(memory*1024)) xs.write("","/local/domain/%i/memory/target"%domid,str(memory*1024)) It works fine within noted ranges, but simply ignores any request higher them.If you are stepping outside the toolstack and doing this sort of thing behind its back then all bets are off and you can't really expect people here to help you. Please try and reproduce the issue using the standard toolstack options. P.S. Thank you for your attention to this issue. _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |