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

Re: [Xen-devel] Empty memory nodes in VNUMA

On 08/14/2015 11:35 AM, Wei Liu wrote:
On Fri, Aug 14, 2015 at 11:19:53AM -0400, Boris Ostrovsky wrote:
What is the purpose of 'nr_vmemranges < nr_vnodes' test in
xc_domain_setvnuma()? Can't we have nodes with no memory?

If that's the case, this check will still miss configurations when a node
spans multiple memory ranges.

For example, this fails:

vcpus = 4
vnuma = [ [ "pnode=0","size=2048","vcpus=0-1" ],
           [ "pnode=1","size=1800" ],
           [ "pnode=2","size=0","vcpus=2-3" ],
           [ "pnode=3","size=100" ] ]

but this

vcpus = 4
vnuma = [ [ "pnode=0","size=2048","vcpus=0-1" ],
           [ "pnode=1","size=1801" ],
           [ "pnode=2","size=0","vcpus=2-3" ],
           [ "pnode=3","size=100" ] ]

does not: because of MMIO hole this will cause a second 1MB range to be
created on node 1 (in libxl__vnuma_build_vmemrange_hvm()).

Can we drop this check?

I would say yes. There is certainly such hardware that some NUMA node
has 0 memory.

Note that this function was written in the early day of vNUMA (4.5).  I
think that function has the assumption that each vnode has one

Try removing that check and see what happens?

I already did --- you think I'd ask without first trying? ;-) Yes, it works fine --- one a couple of tests that I tried.

Do you want me to send a patch?


But, how far are you willing to go? Do you want system with no
vmemranges at all (that means, no memory at all)? If so that
nr_vmemranges == 0 check should also be removed. Just kidding...



Xen-devel mailing list



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