Re: sparc64 bootup regression...

From: KAMEZAWA Hiroyuki
Date: Wed Apr 30 2008 - 03:42:30 EST


On Wed, 30 Apr 2008 09:30:52 +0200
Heiko Carstens <heiko.carstens@xxxxxxxxxx> wrote:
> > How about this ? If this is messy (or doesn't work), Goto-san will rework
> > his own patch by himself. (this patch is against -mm but I think no HUNK to
> > git tree)
> >
> > ==
> > This kind of page allocation, which specifies the address range,
> > can fail easily.
> >
> > Signed-off-by: KAMEZAWA Hiroyuki <kamezawa.hiruyo@xxxxxxxxxxxxxx>
> >
> > Index: mm-2.6.25-mm1/mm/sparse.c
> > ===================================================================
> > --- mm-2.6.25-mm1.orig/mm/sparse.c
> > +++ mm-2.6.25-mm1/mm/sparse.c
> > @@ -264,10 +264,16 @@ static unsigned long *__init sparse_earl
> > * To solve above issue, this collects all usemap on the same section
> > * which has pgdat.
> > */
> > +#ifdef CONFIG_NUMA /* contig_page_data for !NUMA case is not good to do this */
> > section_nr = pfn_to_section_nr(__pa(pgdat) >> PAGE_SHIFT);
> > usemap = alloc_bootmem_section(usemap_size(), section_nr);
> > if (usemap)
> > return usemap;
> > +#endif
> > + /* above allocation can fail. */
> > + usemap = alloc_bootmem_node(NODE_DATA(nid), usemap_size());
> > + if (usemap)
> > + return usemap;
> >
> > /* Stupid: suppress gcc warning for SPARSEMEM && !NUMA */
> > nid = 0;
>
> Fixes it on s390 at least.
>
Thanks, much help to understand what happens.
BTW, s390 is CONFIG_NUMA or not ?

Regards,
-Kame

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/