lkml.org 
[lkml]   [2009]   [Feb]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 1/2] clean up for early_pfn_to_nid
On Fri, 13 Feb 2009 22:12:26 -0800 (PST)
David Miller <davem@davemloft.net> wrote:

> From: Andrew Morton <akpm@linux-foundation.org>
> Date: Fri, 13 Feb 2009 14:20:32 -0800
>
> > I queued these as
> >
> > mm-clean-up-for-early_pfn_to_nid.patch
> > mm-fix-memmap-init-for-handling-memory-hole.patch
> >
> > and tagged them as needed-in-2.6.28.x. I don't recall whether they are
> > needed in earlier -stable releases?
>
> Every kernel going back to at least 2.6.24 has this bug. It's likely
> been around even longer, I didn't bother checking.
>

Sparc64's one is broken from this commit.

09337f501ebdd224cd69df6d168a5c4fe75d86fa
sparc64: Kill CONFIG_SPARC32_COMPAT

CONFIG_NODES_SPAN_OTEHR_NODES is set and config allows following kind of NUMA
This is requirements from powerpc.

low address ---<- max order ->---- high address
[Node0][Node1][Node0]
So, nid is checked at memmap init.

But it included this bug in following case.
low address ---<- max order ->---- high address
[Node0][Hole][Node0]

Hmm..I'm not sure how many kind of machines will see this bug. But there may be
some.

[kamezawa@bluextal linux-2.6.28]$ grep -R CONFIG_NODES_SPAN arch/*
arch/powerpc/configs/celleb_defconfig:CONFIG_NODES_SPAN_OTHER_NODES=y
arch/powerpc/configs/pseries_defconfig:CONFIG_NODES_SPAN_OTHER_NODES=y
arch/powerpc/configs/cell_defconfig:CONFIG_NODES_SPAN_OTHER_NODES=y
arch/sparc64/defconfig:CONFIG_NODES_SPAN_OTHER_NODES=y
arch/x86/configs/x86_64_defconfig:CONFIG_NODES_SPAN_OTHER_NODES=y

powerpc/sparc64/x86 can see this bug.

IMHO, following 2 arch will be safe because..
On x86-64, it seems it doesn't allows above style of memmap. (BUG_ON() will hit)
Powerpc is originator of this CONFIG_NODES_SPAN_OTHER_NODES and they did test.

Thanks,
-Kame



\
 
 \ /
  Last update: 2009-02-18 12:23    [W:0.073 / U:0.820 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site