

>>If there's anything you expected to be here that's missing, please kick
>>me and let me know.  

Somehow I forgot to include a patch last week that keeps two x86-64 
specific init functions around for use at runtime.  The below patch 
fixes this.  Also included in the patch is the only change required
in the hot-add pgtable init paths to account for Andi's 4 level 
page table patches.

Please apply.

matt

Remove __init from two functions needed for page table creation
and initialization in the x86-64 hot-add code path.  Also, update
a single line to the generic 4-level page table API.  

Make them __devinit - daveh

Signed-off-by: Matt Tolentino <matthew.e.tolentino@intel.com>

Signed-off-by: Dave Hansen <haveblue@us.ibm.com>
---

 memhotplug-dave/arch/x86_64/mm/init.c |    6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

diff -puN arch/x86_64/mm/init.c~H7-x86_64-remove-__init arch/x86_64/mm/init.c
--- memhotplug/arch/x86_64/mm/init.c~H7-x86_64-remove-__init	2004-12-10 13:52:49.000000000 -0800
+++ memhotplug-dave/arch/x86_64/mm/init.c	2004-12-10 13:52:49.000000000 -0800
@@ -181,7 +181,7 @@ static  struct temp_map { 
 	{}
 }; 
 
-static __init void *alloc_low_page(int *index, unsigned long *phys) 
+static __devinit void *alloc_low_page(int *index, unsigned long *phys)
 { 
 	struct temp_map *ti;
 	int i; 
@@ -211,7 +211,7 @@ static __init void *alloc_low_page(int *
 	return adr; 
 } 
 
-static __init void unmap_low_page(int i)
+static __devinit void unmap_low_page(int i)
 { 
 	struct temp_map *ti;
 
@@ -347,7 +347,7 @@ void init_memory_mapping(unsigned long s
 		pgd_t *pgd;
 
 		if (after_bootmem)
-			pgd = level3_offset_k(pml4, __PAGE_OFFSET);
+			pgd = pml4_pgd_offset(pml4, __PAGE_OFFSET);
 		else
 			pgd = alloc_low_page(&map, &pgd_phys);
 		next = start + PML4_SIZE;
_
