All of lore.kernel.org
 help / color / mirror / Atom feed
From: Gary Hade <garyhade@us.ibm.com>
To: Yasunori Goto <y-goto@jp.fujitsu.com>
Cc: Gary Hade <garyhade@us.ibm.com>,
	Dave Hansen <dave@linux.vnet.ibm.com>,
	linux-mm@kvack.org, Andrew Morton <akpm@linux-foundation.org>,
	Badari Pulavarty <pbadari@us.ibm.com>, Mel Gorman <mel@csn.ul.ie>,
	Chris McDermott <lcm@us.ibm.com>,
	linux-kernel@vger.kernel.org, Ingo Molnar <mingo@elte.hu>,
	Greg KH <greg@kroah.com>,
	Nish Aravamudan <nish.aravamudan@gmail.com>
Subject: Re: [PATCH] mm: show node to memory section relationship with symlinks in sysfs
Date: Wed, 1 Oct 2008 09:51:05 -0700	[thread overview]
Message-ID: <20081001165105.GA7098@us.ibm.com> (raw)
In-Reply-To: <20081001103221.306C.E1E9C6FF@jp.fujitsu.com>

On Wed, Oct 01, 2008 at 11:48:29AM +0900, Yasunori Goto wrote:
> > On Tue, Sep 30, 2008 at 08:50:37AM -0700, Dave Hansen wrote:
> > > On Tue, 2008-09-30 at 17:06 +0900, Yasunori Goto wrote:
> > > > > +#define section_nr_to_nid(section_nr) pfn_to_nid(section_nr_to_pfn(section_nr))
> > > > >  #endif /* CONFIG_MEMORY_HOTPLUG_SPARSE */
> > > > 
> > > > If the first page of the section is not valid, then this section_nr_to_nid()
> > > > doesn't return correct value.
> > > > 
> > > > I tested this patch. In my box, the start_pfn of node 1 is 1200400, but 
> > > > section_nr_to_pfn(mem_blk->phys_index) returns 1200000. As a result,
> > > > the section is linked to node 0.
> > > 
> > > Crap, I was worried about that.
> > > 
> > > Gary, this means that we have a N:1 relationship between NUMA nodes and
> > > sections.  This normally isn't a problem because sections don't really
> > > care about nodes and they layer underneath them.
> > 
> > So, using Yasunori-san's example the memory section starting at
> > pfn 1200000 actually resides on both node 0 and node 1.
> 
> 
> It may be possible that one section is divided to different node in theory.
> (I don't know really there is...)
> 
> But, the cause of my trouble differs from it.
> There is a memory hole which is occupied by firmware.
> So, the memory map of my box is here.
> 
> ----
> early_node_map[3] active PFN ranges
>     0: 0x00000100 -> 0x00006d00
>     0: 0x00408000 -> 0x00410000
>     1: 0x01200400 -> 0x01210000
> ----
> 
> memmap_init() initializes from start_pfn (to end_pfn).
> So, the memmaps for this first hole (0x1200000 - 0x12003ff) are not initialized,
> and node id is not set for them. This is true cause.

Thanks for the clarification.  I think we need to cover both the
theoretical single memory section spanning multiple nodes case
and your memory hole/memory section intersection case.

Gary

-- 
Gary Hade
System x Enablement
IBM Linux Technology Center
503-578-4503  IBM T/L: 775-4503
garyhade@us.ibm.com
http://www.ibm.com/linux/ltc

WARNING: multiple messages have this Message-ID (diff)
From: Gary Hade <garyhade@us.ibm.com>
To: Yasunori Goto <y-goto@jp.fujitsu.com>
Cc: Gary Hade <garyhade@us.ibm.com>,
	Dave Hansen <dave@linux.vnet.ibm.com>,
	linux-mm@kvack.org, Andrew Morton <akpm@linux-foundation.org>,
	Badari Pulavarty <pbadari@us.ibm.com>, Mel Gorman <mel@csn.ul.ie>,
	Chris McDermott <lcm@us.ibm.com>,
	linux-kernel@vger.kernel.org, Ingo Molnar <mingo@elte.hu>,
	Greg KH <greg@kroah.com>,
	Nish Aravamudan <nish.aravamudan@gmail.com>
Subject: Re: [PATCH] mm: show node to memory section relationship with symlinks in sysfs
Date: Wed, 1 Oct 2008 09:51:05 -0700	[thread overview]
Message-ID: <20081001165105.GA7098@us.ibm.com> (raw)
In-Reply-To: <20081001103221.306C.E1E9C6FF@jp.fujitsu.com>

On Wed, Oct 01, 2008 at 11:48:29AM +0900, Yasunori Goto wrote:
> > On Tue, Sep 30, 2008 at 08:50:37AM -0700, Dave Hansen wrote:
> > > On Tue, 2008-09-30 at 17:06 +0900, Yasunori Goto wrote:
> > > > > +#define section_nr_to_nid(section_nr) pfn_to_nid(section_nr_to_pfn(section_nr))
> > > > >  #endif /* CONFIG_MEMORY_HOTPLUG_SPARSE */
> > > > 
> > > > If the first page of the section is not valid, then this section_nr_to_nid()
> > > > doesn't return correct value.
> > > > 
> > > > I tested this patch. In my box, the start_pfn of node 1 is 1200400, but 
> > > > section_nr_to_pfn(mem_blk->phys_index) returns 1200000. As a result,
> > > > the section is linked to node 0.
> > > 
> > > Crap, I was worried about that.
> > > 
> > > Gary, this means that we have a N:1 relationship between NUMA nodes and
> > > sections.  This normally isn't a problem because sections don't really
> > > care about nodes and they layer underneath them.
> > 
> > So, using Yasunori-san's example the memory section starting at
> > pfn 1200000 actually resides on both node 0 and node 1.
> 
> 
> It may be possible that one section is divided to different node in theory.
> (I don't know really there is...)
> 
> But, the cause of my trouble differs from it.
> There is a memory hole which is occupied by firmware.
> So, the memory map of my box is here.
> 
> ----
> early_node_map[3] active PFN ranges
>     0: 0x00000100 -> 0x00006d00
>     0: 0x00408000 -> 0x00410000
>     1: 0x01200400 -> 0x01210000
> ----
> 
> memmap_init() initializes from start_pfn (to end_pfn).
> So, the memmaps for this first hole (0x1200000 - 0x12003ff) are not initialized,
> and node id is not set for them. This is true cause.

Thanks for the clarification.  I think we need to cover both the
theoretical single memory section spanning multiple nodes case
and your memory hole/memory section intersection case.

Gary

-- 
Gary Hade
System x Enablement
IBM Linux Technology Center
503-578-4503  IBM T/L: 775-4503
garyhade@us.ibm.com
http://www.ibm.com/linux/ltc

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

  reply	other threads:[~2008-10-01 16:52 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-09-29 20:05 [PATCH] mm: show node to memory section relationship with symlinks in sysfs Gary Hade
2008-09-29 20:05 ` Gary Hade
2008-09-30  8:06 ` Yasunori Goto
2008-09-30  8:06   ` Yasunori Goto
2008-09-30 15:50   ` Dave Hansen
2008-09-30 15:50     ` Dave Hansen
2008-09-30 19:41     ` Gary Hade
2008-09-30 19:41       ` Gary Hade
2008-10-01  2:48       ` Yasunori Goto
2008-10-01  2:48         ` Yasunori Goto
2008-10-01 16:51         ` Gary Hade [this message]
2008-10-01 16:51           ` Gary Hade
2008-09-30 23:29   ` Gary Hade
2008-09-30 23:29     ` Gary Hade

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=20081001165105.GA7098@us.ibm.com \
    --to=garyhade@us.ibm.com \
    --cc=akpm@linux-foundation.org \
    --cc=dave@linux.vnet.ibm.com \
    --cc=greg@kroah.com \
    --cc=lcm@us.ibm.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=mel@csn.ul.ie \
    --cc=mingo@elte.hu \
    --cc=nish.aravamudan@gmail.com \
    --cc=pbadari@us.ibm.com \
    --cc=y-goto@jp.fujitsu.com \
    /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.