diff -Napur -X /home/jbarnes/dontdiff linux-2.5-memmap.orig/arch/ia64/mm/init.c linux-2.5-memmap/arch/ia64/mm/init.c --- linux-2.5-memmap.orig/arch/ia64/mm/init.c 2004-07-28 15:42:32.000000000 -0700 +++ linux-2.5-memmap/arch/ia64/mm/init.c 2004-07-28 15:38:19.000000000 -0700 @@ -433,14 +433,17 @@ virtual_memmap_init (u64 start, u64 end, } void -memmap_init (struct page *start, unsigned long size, int nid, - unsigned long zone, unsigned long start_pfn) +memmap_init (unsigned long size, int nid, unsigned long zone, + unsigned long start_pfn) { if (!vmem_map) memmap_init_zone(size, nid, zone, start_pfn); else { + struct page *start; struct memmap_init_callback_data args; + start = pfn_to_page(start_pfn); + args.start = start; args.end = start + size; args.nid = nid; diff -Napur -X /home/jbarnes/dontdiff linux-2.5-memmap.orig/include/asm-ia64/pgtable.h linux-2.5-memmap/include/asm-ia64/pgtable.h --- linux-2.5-memmap.orig/include/asm-ia64/pgtable.h 2004-07-28 15:42:04.000000000 -0700 +++ linux-2.5-memmap/include/asm-ia64/pgtable.h 2004-07-28 15:38:45.000000000 -0700 @@ -515,7 +515,7 @@ do { \ # ifdef CONFIG_VIRTUAL_MEM_MAP /* arch mem_map init routine is needed due to holes in a virtual mem_map */ # define __HAVE_ARCH_MEMMAP_INIT - extern void memmap_init (struct page *start, unsigned long size, int nid, unsigned long zone, + extern void memmap_init (unsigned long size, int nid, unsigned long zone, unsigned long start_pfn); # endif /* CONFIG_VIRTUAL_MEM_MAP */ # endif /* !__ASSEMBLY__ */