aboutsummaryrefslogtreecommitdiffstats
path: root/arch/ppc64
diff options
context:
space:
mode:
authorAndy Whitcroft <apw@shadowen.org>2005-06-23 03:08:02 -0400
committerLinus Torvalds <torvalds@ppc970.osdl.org>2005-06-23 12:45:05 -0400
commit74b30be2e183bd9a12d0350698996e3d1969f290 (patch)
tree4add891144d4f0122794ce4c7befa3db8cdb3b68 /arch/ppc64
parent510f8fa7ba18320d408dd3093663e58f5664f2f0 (diff)
[PATCH] ppc64: add memory present
Provide hooks for PPC64 to allow memory models to be informed of installed memory areas. This allows SPARSEMEM to instantiate mem_map for the populated areas. Signed-off-by: Andy Whitcroft <apw@shadowen.org> Signed-off-by: Dave Hansen <haveblue@us.ibm.com> Signed-off-by: Martin Bligh <mbligh@aracnet.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'arch/ppc64')
-rw-r--r--arch/ppc64/Kconfig4
-rw-r--r--arch/ppc64/mm/numa.c3
2 files changed, 5 insertions, 2 deletions
diff --git a/arch/ppc64/Kconfig b/arch/ppc64/Kconfig
index 3c8bfd0345cc..c92d48fe06e5 100644
--- a/arch/ppc64/Kconfig
+++ b/arch/ppc64/Kconfig
@@ -212,8 +212,8 @@ config ARCH_FLATMEM_ENABLE
212source "mm/Kconfig" 212source "mm/Kconfig"
213 213
214config HAVE_ARCH_EARLY_PFN_TO_NID 214config HAVE_ARCH_EARLY_PFN_TO_NID
215 bool 215 def_bool y
216 default y 216 depends on NEED_MULTIPLE_NODES
217 217
218# Some NUMA nodes have memory ranges that span 218# Some NUMA nodes have memory ranges that span
219# other nodes. Even though a pfn is valid and 219# other nodes. Even though a pfn is valid and
diff --git a/arch/ppc64/mm/numa.c b/arch/ppc64/mm/numa.c
index ea862ec643d3..cafd91aef289 100644
--- a/arch/ppc64/mm/numa.c
+++ b/arch/ppc64/mm/numa.c
@@ -440,6 +440,8 @@ new_range:
440 for (i = start ; i < (start+size); i += MEMORY_INCREMENT) 440 for (i = start ; i < (start+size); i += MEMORY_INCREMENT)
441 numa_memory_lookup_table[i >> MEMORY_INCREMENT_SHIFT] = 441 numa_memory_lookup_table[i >> MEMORY_INCREMENT_SHIFT] =
442 numa_domain; 442 numa_domain;
443 memory_present(numa_domain, start >> PAGE_SHIFT,
444 (start + size) >> PAGE_SHIFT);
443 445
444 if (--ranges) 446 if (--ranges)
445 goto new_range; 447 goto new_range;
@@ -481,6 +483,7 @@ static void __init setup_nonnuma(void)
481 483
482 for (i = 0 ; i < top_of_ram; i += MEMORY_INCREMENT) 484 for (i = 0 ; i < top_of_ram; i += MEMORY_INCREMENT)
483 numa_memory_lookup_table[i >> MEMORY_INCREMENT_SHIFT] = 0; 485 numa_memory_lookup_table[i >> MEMORY_INCREMENT_SHIFT] = 0;
486 memory_present(0, 0, init_node_data[0].node_end_pfn);
484} 487}
485 488
486static void __init dump_numa_topology(void) 489static void __init dump_numa_topology(void)