Index: linux-2.6.19-rc1-mm1/arch/alpha/mm/numa.c
===================================================================
--- linux-2.6.19-rc1-mm1.orig/arch/alpha/mm/numa.c	2006-10-12 23:31:12.050705575 -0500
+++ linux-2.6.19-rc1-mm1/arch/alpha/mm/numa.c	2006-10-12 23:46:20.420403844 -0500
@@ -122,8 +122,8 @@ setup_memory_node(int nid, void *kernel_
 		return;
 
 	/* Update global {min,max}_low_pfn from node information. */
-	if (node_min_pfn < min_low_pfn)
-		min_low_pfn = node_min_pfn;
+	if (node_min_pfn < mem_map_min)
+		mem_map_min = node_min_pfn;
 	if (node_max_pfn > max_low_pfn)
 		max_pfn = max_low_pfn = node_max_pfn;
 
@@ -255,7 +255,7 @@ setup_memory(void *kernel_end)
 
 	nodes_clear(node_online_map);
 
-	min_low_pfn = ~0UL;
+	mem_map_min = ~0UL;
 	max_low_pfn = 0UL;
 	for (nid = 0; nid < MAX_NUMNODES; nid++)
 		setup_memory_node(nid, kernel_end);
Index: linux-2.6.19-rc1-mm1/arch/cris/kernel/setup.c
===================================================================
--- linux-2.6.19-rc1-mm1.orig/arch/cris/kernel/setup.c	2006-10-12 23:31:12.059495390 -0500
+++ linux-2.6.19-rc1-mm1/arch/cris/kernel/setup.c	2006-10-12 23:46:20.435053534 -0500
@@ -118,10 +118,10 @@ setup_arch(char **cmdline_p)
          */
 
 	max_low_pfn = max_pfn;
-	min_low_pfn = PAGE_OFFSET >> PAGE_SHIFT;
+	mem_map_min = PAGE_OFFSET >> PAGE_SHIFT;
 
 	bootmap_size = init_bootmem_node(NODE_DATA(0), start_pfn,
-					 min_low_pfn, 
+					 mem_map_min, 
 					 max_low_pfn);
 
 	/* And free all memory not belonging to the kernel (addr, size) */
Index: linux-2.6.19-rc1-mm1/arch/cris/mm/init.c
===================================================================
--- linux-2.6.19-rc1-mm1.orig/arch/cris/mm/init.c	2006-10-12 23:31:12.069261852 -0500
+++ linux-2.6.19-rc1-mm1/arch/cris/mm/init.c	2006-10-12 23:46:20.445796639 -0500
@@ -176,7 +176,7 @@ mem_init(void)
 	 * high_memory was also set in setup.c
 	 */
 
-	max_mapnr = num_physpages = max_low_pfn - min_low_pfn;
+	max_mapnr = num_physpages = max_low_pfn - mem_map_min;
  
 	/* this will put all memory onto the freelists */
         totalram_pages = free_all_bootmem();
Index: linux-2.6.19-rc1-mm1/arch/frv/kernel/setup.c
===================================================================
--- linux-2.6.19-rc1-mm1.orig/arch/frv/kernel/setup.c	2006-10-12 23:31:12.078051667 -0500
+++ linux-2.6.19-rc1-mm1/arch/frv/kernel/setup.c	2006-10-12 23:46:20.462399621 -0500
@@ -924,9 +924,9 @@ static void __init setup_linux_memory(vo
 		low_top_pfn = num_physpages;
 	}
 
-	min_low_pfn = memory_start >> PAGE_SHIFT;
+	mem_map_min = phys_to_pfn(memory_start);
 	max_low_pfn = low_top_pfn;
-	max_pfn = memory_end >> PAGE_SHIFT;
+	mem_map_max = phys_to_pfn(memory_end);
 
 	num_mappedpages = low_top_pfn;
 
@@ -995,9 +995,9 @@ static void __init setup_uclinux_memory(
 	high_memory = (void *) (memory_end & PAGE_MASK);
 	max_mapnr = num_physpages = ((unsigned long) high_memory - PAGE_OFFSET) >> PAGE_SHIFT;
 
-	min_low_pfn = memory_start >> PAGE_SHIFT;
-	max_low_pfn = memory_end >> PAGE_SHIFT;
-	max_pfn = max_low_pfn;
+	mem_map_min = phys_to_pfn(memory_start);
+	mem_map_high = phys_to_pfn(memory_end);
+	mem_map_max = mem_map_high;
 
 	/* now take back the bits the core kernel is occupying */
 #ifndef CONFIG_PROTECT_KERNEL
Index: linux-2.6.19-rc1-mm1/arch/frv/mm/init.c
===================================================================
--- linux-2.6.19-rc1-mm1.orig/arch/frv/mm/init.c	2006-10-12 23:31:12.087818128 -0500
+++ linux-2.6.19-rc1-mm1/arch/frv/mm/init.c	2006-10-12 23:46:20.475096019 -0500
@@ -126,7 +126,7 @@ void __init paging_init(void)
 
 	/* distribute the allocatable pages across the various zones and pass them to the allocator
 	 */
-	zones_size[ZONE_DMA]     = max_low_pfn - min_low_pfn;
+	zones_size[ZONE_DMA]     = mem_map_high - mem_map_min;
 	zones_size[ZONE_NORMAL]  = 0;
 #ifdef CONFIG_HIGHMEM
 	zones_size[ZONE_HIGHMEM] = num_physpages - num_mappedpages;
Index: linux-2.6.19-rc1-mm1/arch/i386/kernel/setup.c
===================================================================
--- linux-2.6.19-rc1-mm1.orig/arch/i386/kernel/setup.c	2006-10-12 23:31:12.100514528 -0500
+++ linux-2.6.19-rc1-mm1/arch/i386/kernel/setup.c	2006-10-12 23:46:20.493652292 -0500
@@ -1067,16 +1067,16 @@ static unsigned long __init setup_memory
 	 * partially used pages are not usable - thus
 	 * we are rounding upwards:
 	 */
-	min_low_pfn = PFN_UP(init_pg_tables_end);
+	mem_map_min = PFN_UP(init_pg_tables_end);
 
 	find_max_pfn();
 
-	max_low_pfn = find_max_low_pfn();
+	mem_map_high = find_max_low_pfn();
 
 #ifdef CONFIG_HIGHMEM
 	highstart_pfn = highend_pfn = max_pfn;
-	if (max_pfn > max_low_pfn) {
-		highstart_pfn = max_low_pfn;
+	if (mem_map_max > mem_map_high) {
+		highstart_pfn = mem_map_high;
 	}
 	printk(KERN_NOTICE "%ldMB HIGHMEM available.\n",
 		pages_to_mb(highend_pfn - highstart_pfn));
@@ -1087,14 +1087,14 @@ static unsigned long __init setup_memory
 	high_memory = (void *) __va(max_low_pfn * PAGE_SIZE - 1) + 1;
 #endif
 #ifdef CONFIG_FLATMEM
-	max_mapnr = num_physpages;
+	mem_map_max = num_physpages;
 #endif
 	printk(KERN_NOTICE "%ldMB LOWMEM available.\n",
 			pages_to_mb(max_low_pfn));
 
 	setup_bootmem_allocator();
 
-	return max_low_pfn;
+	return mem_map_high;
 }
 
 void __init zone_sizes_init(void)
@@ -1124,7 +1124,7 @@ void __init setup_bootmem_allocator(void
 	/*
 	 * Initialize the boot-time allocator (with low memory only):
 	 */
-	bootmap_size = init_bootmem(min_low_pfn, max_low_pfn);
+	bootmap_size = init_bootmem(mem_map_min, mem_map_high);
 
 	register_bootmem_low_pages(max_low_pfn);
 
@@ -1134,7 +1134,7 @@ void __init setup_bootmem_allocator(void
 	 * the (very unlikely) case of us accidentally initializing the
 	 * bootmem allocator with an invalid RAM area.
 	 */
-	reserve_bootmem(__PHYSICAL_START, (PFN_PHYS(min_low_pfn) +
+	reserve_bootmem(__PHYSICAL_START, (PFN_PHYS(mem_map_min) +
 			 bootmap_size + PAGE_SIZE-1) - (__PHYSICAL_START));
 
 	/*
@@ -1176,7 +1176,7 @@ void __init setup_bootmem_allocator(void
 	numa_kva_reserve();
 #ifdef CONFIG_BLK_DEV_INITRD
 	if (LOADER_TYPE && INITRD_START) {
-		if (INITRD_START + INITRD_SIZE <= (max_low_pfn << PAGE_SHIFT)) {
+		if (INITRD_START + INITRD_SIZE <= (mem_map_high << PAGE_SHIFT)) {
 			reserve_bootmem(INITRD_START, INITRD_SIZE);
 			initrd_start =
 				INITRD_START ? INITRD_START + PAGE_OFFSET : 0;
@@ -1186,7 +1186,7 @@ void __init setup_bootmem_allocator(void
 			printk(KERN_ERR "initrd extends beyond end of memory "
 			    "(0x%08lx > 0x%08lx)\ndisabling initrd\n",
 			    INITRD_START + INITRD_SIZE,
-			    max_low_pfn << PAGE_SHIFT);
+			    mem_map_high << PAGE_SHIFT);
 			initrd_start = 0;
 		}
 	}
Index: linux-2.6.19-rc1-mm1/fs/proc/proc_misc.c
===================================================================
--- linux-2.6.19-rc1-mm1.orig/fs/proc/proc_misc.c	2006-10-12 23:31:12.040939114 -0500
+++ linux-2.6.19-rc1-mm1/fs/proc/proc_misc.c	2006-10-12 23:46:20.511231920 -0500
@@ -675,7 +675,7 @@ read_page_owner(struct file *file, char 
 	int i;
 	ssize_t num_written = 0;
 
-	pfn = min_low_pfn + *ppos;
+	pfn = mem_map_min + *ppos;
 	page = pfn_to_page(pfn);
 	for (; pfn < max_pfn; pfn++) {
 		if (!pfn_valid(pfn))
Index: linux-2.6.19-rc1-mm1/include/asm-frv/page.h
===================================================================
--- linux-2.6.19-rc1-mm1.orig/include/asm-frv/page.h	2006-10-12 23:31:12.003826561 -0500
+++ linux-2.6.19-rc1-mm1/include/asm-frv/page.h	2006-10-12 23:46:20.526858255 -0500
@@ -52,14 +52,13 @@ typedef struct { unsigned long	pgprot;	}
 #define pfn_to_kaddr(pfn)	__va((pfn) << PAGE_SHIFT)
 
 extern unsigned long max_low_pfn;
-extern unsigned long min_low_pfn;
 extern unsigned long max_pfn;
 
 #ifdef CONFIG_MMU
 #define pfn_valid(pfn)		((pfn) < max_mapnr)
 #else
 #define ARCH_PFN_OFFSET		(PAGE_OFFSET >> PAGE_SHIFT)
-#define pfn_valid(pfn)		((pfn) >= min_low_pfn && (pfn) < max_low_pfn)
+#define pfn_valid(pfn)		((pfn) >= mem_map_min && (pfn) < max_low_pfn)
 
 #endif
 
Index: linux-2.6.19-rc1-mm1/include/asm-ia64/page.h
===================================================================
--- linux-2.6.19-rc1-mm1.orig/include/asm-ia64/page.h	2006-10-12 23:31:12.013593022 -0500
+++ linux-2.6.19-rc1-mm1/include/asm-ia64/page.h	2006-10-12 23:46:20.536624715 -0500
@@ -110,7 +110,6 @@ do {						\
 #ifdef CONFIG_FLATMEM
 # define pfn_valid(pfn)		(((pfn) < max_mapnr) && ia64_pfn_valid(pfn))
 #elif defined(CONFIG_DISCONTIGMEM)
-extern unsigned long min_low_pfn;
 extern unsigned long max_low_pfn;
 # define pfn_valid(pfn)		(((pfn) >= min_low_pfn) && ((pfn) < max_low_pfn) && ia64_pfn_valid(pfn))
 #endif
Index: linux-2.6.19-rc1-mm1/include/linux/bootmem.h
===================================================================
--- linux-2.6.19-rc1-mm1.orig/include/linux/bootmem.h	2006-10-12 23:31:11.995036746 -0500
+++ linux-2.6.19-rc1-mm1/include/linux/bootmem.h	2006-10-12 23:46:20.547367821 -0500
@@ -12,7 +12,6 @@
  */
 
 extern unsigned long max_low_pfn;
-extern unsigned long min_low_pfn;
 
 /*
  * highest page