X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=arch%2Fm32r%2Fmm%2Fdiscontig.c;h=c7efdb0aefc5998768b0984137b035ce3f1cd7c3;hb=refs%2Fheads%2Fvserver;hp=3e49ff64bc9f02a3d98ecdb5beb1564f93a8d0cd;hpb=a2c21200f1c81b08cb55e417b68150bba439b646;p=linux-2.6.git diff --git a/arch/m32r/mm/discontig.c b/arch/m32r/mm/discontig.c index 3e49ff64b..c7efdb0ae 100644 --- a/arch/m32r/mm/discontig.c +++ b/arch/m32r/mm/discontig.c @@ -6,17 +6,20 @@ * Copyright (c) 2003 Hitoshi Yamamoto */ -#include #include #include #include #include +#include +#include +#include #include extern char _end[]; struct pglist_data *node_data[MAX_NUMNODES]; +EXPORT_SYMBOL(node_data); static bootmem_data_t node_bdata[MAX_NUMNODES] __initdata; pg_data_t m32r_node_data[MAX_NUMNODES]; @@ -75,7 +78,7 @@ unsigned long __init setup_memory(void) mem_prof_init(); - for (nid = 0 ; nid < numnodes ; nid++) { + for_each_online_node(nid) { mp = &mem_prof[nid]; NODE_DATA(nid)=(pg_data_t *)&m32r_node_data[nid]; NODE_DATA(nid)->bdata = &node_bdata[nid]; @@ -102,9 +105,7 @@ unsigned long __init setup_memory(void) if (INITRD_START + INITRD_SIZE <= PFN_PHYS(max_low_pfn)) { reserve_bootmem_node(NODE_DATA(0), INITRD_START, INITRD_SIZE); - initrd_start = INITRD_START ? - INITRD_START + PAGE_OFFSET : 0; - + initrd_start = INITRD_START + PAGE_OFFSET; initrd_end = initrd_start + INITRD_SIZE; printk("initrd:start[%08lx],size[%08lx]\n", initrd_start, INITRD_SIZE); @@ -134,13 +135,7 @@ unsigned long __init zone_sizes_init(void) int nid, i; mem_prof_t *mp; - pgdat_list = NULL; - for (nid = numnodes - 1 ; nid >= 0 ; nid--) { - NODE_DATA(nid)->pgdat_next = pgdat_list; - pgdat_list = NODE_DATA(nid); - } - - for (nid = 0 ; nid < numnodes ; nid++) { + for_each_online_node(nid) { mp = &mem_prof[nid]; for (i = 0 ; i < MAX_NR_ZONES ; i++) { zones_size[i] = 0;