[2/3] add memory present for ppc64

From: Andy Whitcroft
Date: Wed May 04 2005 - 15:56:50 EST


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@xxxxxxxxxxxx>
Signed-off-by: Dave Hansen <haveblue@xxxxxxxxxx>
Signed-off-by: Martin Bligh <mbligh@xxxxxxxxxxx>
---
Kconfig | 4 ++--
mm/numa.c | 3 +++
2 files changed, 5 insertions(+), 2 deletions(-)

diff -X /home/apw/brief/lib/vdiff.excl -rupN reference/arch/ppc64/Kconfig current/arch/ppc64/Kconfig
--- reference/arch/ppc64/Kconfig 2005-05-04 20:54:50.000000000 +0100
+++ current/arch/ppc64/Kconfig 2005-05-04 20:54:50.000000000 +0100
@@ -212,8 +212,8 @@ config ARCH_FLATMEM_ENABLE
source "mm/Kconfig"

config HAVE_ARCH_EARLY_PFN_TO_NID
- bool
- default y
+ def_bool y
+ depends on NEED_MULTIPLE_NODES

# Some NUMA nodes have memory ranges that span
# other nodes. Even though a pfn is valid and
diff -X /home/apw/brief/lib/vdiff.excl -rupN reference/arch/ppc64/mm/numa.c current/arch/ppc64/mm/numa.c
--- reference/arch/ppc64/mm/numa.c 2005-04-11 19:33:15.000000000 +0100
+++ current/arch/ppc64/mm/numa.c 2005-05-04 20:54:50.000000000 +0100
@@ -440,6 +440,8 @@ new_range:
for (i = start ; i < (start+size); i += MEMORY_INCREMENT)
numa_memory_lookup_table[i >> MEMORY_INCREMENT_SHIFT] =
numa_domain;
+ memory_present(numa_domain, start >> PAGE_SHIFT,
+ (start + size) >> PAGE_SHIFT);

if (--ranges)
goto new_range;
@@ -481,6 +483,7 @@ static void __init setup_nonnuma(void)

for (i = 0 ; i < top_of_ram; i += MEMORY_INCREMENT)
numa_memory_lookup_table[i >> MEMORY_INCREMENT_SHIFT] = 0;
+ memory_present(0, 0, init_node_data[0].node_end_pfn);
}

static void __init dump_numa_topology(void)
-
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/