All of lore.kernel.org
 help / color / mirror / Atom feed
From: Boris Ostrovsky <boris.ostrovsky@oracle.com>
To: Wei Liu <wei.liu2@citrix.com>
Cc: Xen-devel <xen-devel@lists.xenproject.org>,
	Dario Faggioli <dario.faggioli@citrix.com>,
	Ian Jackson <Ian.Jackson@eu.citrix.com>,
	Ian Campbell <ian.campbell@citrix.com>
Subject: Re: Empty memory nodes in VNUMA
Date: Fri, 14 Aug 2015 11:38:43 -0400	[thread overview]
Message-ID: <55CE0B83.4000208@oracle.com> (raw)
In-Reply-To: <20150814153543.GK978@zion.uk.xensource.com>

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
> vmemrange.
>
> 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?

-boris

>
> 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...
>
> Wei.
>
>> -boris

  reply	other threads:[~2015-08-14 15:39 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-08-13 15:41 [PATCH for-4.6 v2 0/3] More vNUMA fixes Wei Liu
2015-08-13 15:41 ` [PATCH for-4.6 v2 1/3] xl: fix vNUMA vdistance parsing Wei Liu
2015-08-16  8:46   ` Ian Campbell
2015-08-13 15:41 ` [PATCH for-4.6 v2 2/3] xl: error out if vNUMA specifies more vcpus than pcpus Wei Liu
2015-08-13 23:25   ` Dario Faggioli
2015-08-13 23:38     ` Wei Liu
2015-08-14 10:19       ` Dario Faggioli
2015-08-16  8:51       ` Ian Campbell
2015-08-17 18:42         ` Wei Liu
2015-08-13 15:41 ` [PATCH for-4.6 v2 3/3] libxc: fix vNUMA memory allocation Wei Liu
2015-08-16  8:47   ` Ian Campbell
2015-08-14 15:19 ` Empty memory nodes in VNUMA Boris Ostrovsky
2015-08-14 15:35   ` Wei Liu
2015-08-14 15:38     ` Boris Ostrovsky [this message]
2015-08-14 15:44       ` Wei Liu

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=55CE0B83.4000208@oracle.com \
    --to=boris.ostrovsky@oracle.com \
    --cc=Ian.Jackson@eu.citrix.com \
    --cc=dario.faggioli@citrix.com \
    --cc=ian.campbell@citrix.com \
    --cc=wei.liu2@citrix.com \
    --cc=xen-devel@lists.xenproject.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.