[parisc-linux-cvs] linux-2.6 tausq
Randolph Chung
randolph at tausq.org
Wed Sep 15 19:07:42 MDT 2004
> Modified files:
> . : Makefile
> arch/parisc/mm : init.c
>
> Log message:
> 2.6.9-rc2-pa4: fix CONFIG_DISCONTIGMEM support
we now need to initialize the pfn->nid map before initializing the zone.
Index: arch/parisc/mm/init.c
===================================================================
RCS file: /var/cvs/linux-2.6/arch/parisc/mm/init.c,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -p -r1.12 -r1.13
--- arch/parisc/mm/init.c 13 Sep 2004 15:22:25 -0000 1.12
+++ arch/parisc/mm/init.c 16 Sep 2004 01:06:25 -0000 1.13
@@ -804,19 +804,21 @@ void __init paging_init(void)
ZONE_DMA zone. */
zones_size[ZONE_DMA] = pmem_ranges[i].pages;
- free_area_init_node(i, NODE_DATA(i), zones_size,
- pmem_ranges[i].start_pfn, 0);
-
#ifdef CONFIG_DISCONTIGMEM
+ /* Need to initialize the pfnnid_map before we can initialize
+ the zone */
{
int j;
- for (j = (node_start_pfn(i) >> PFNNID_SHIFT);
- j <= (node_end_pfn(i) >> PFNNID_SHIFT);
+ for (j = (pmem_ranges[i].start_pfn >> PFNNID_SHIFT);
+ j <= ((pmem_ranges[i].start_pfn + pmem_ranges[i].pages) >> PFNNID_SHIFT);
j++) {
pfnnid_map[j] = i;
}
}
#endif
+
+ free_area_init_node(i, NODE_DATA(i), zones_size,
+ pmem_ranges[i].start_pfn, 0);
}
}
More information about the parisc-linux-cvs
mailing list