aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--include/asm-ppc64/mmzone.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/include/asm-ppc64/mmzone.h b/include/asm-ppc64/mmzone.h
index 80a708e7093a..15e777ce0f4a 100644
--- a/include/asm-ppc64/mmzone.h
+++ b/include/asm-ppc64/mmzone.h
@@ -33,6 +33,9 @@ extern int numa_cpu_lookup_table[];
33extern char *numa_memory_lookup_table; 33extern char *numa_memory_lookup_table;
34extern cpumask_t numa_cpumask_lookup_table[]; 34extern cpumask_t numa_cpumask_lookup_table[];
35extern int nr_cpus_in_node[]; 35extern int nr_cpus_in_node[];
36#ifdef CONFIG_MEMORY_HOTPLUG
37extern unsigned long max_pfn;
38#endif
36 39
37/* 16MB regions */ 40/* 16MB regions */
38#define MEMORY_INCREMENT_SHIFT 24 41#define MEMORY_INCREMENT_SHIFT 24
@@ -45,6 +48,11 @@ static inline int pa_to_nid(unsigned long pa)
45{ 48{
46 int nid; 49 int nid;
47 50
51#ifdef CONFIG_MEMORY_HOTPLUG
52 /* kludge hot added sections default to node 0 */
53 if (pa >= (max_pfn << PAGE_SHIFT))
54 return 0;
55#endif
48 nid = numa_memory_lookup_table[pa >> MEMORY_INCREMENT_SHIFT]; 56 nid = numa_memory_lookup_table[pa >> MEMORY_INCREMENT_SHIFT];
49 57
50#ifdef DEBUG_NUMA 58#ifdef DEBUG_NUMA