aboutsummaryrefslogtreecommitdiffstats
path: root/arch/i386/mm/init.c
diff options
context:
space:
mode:
authorAndy Whitcroft <apw@shadowen.org>2005-06-23 03:07:57 -0400
committerLinus Torvalds <torvalds@ppc970.osdl.org>2005-06-23 12:45:05 -0400
commit05b79bdcb48c18cd9b580c39e3efb9a1ab078151 (patch)
tree1767aaa7a4621ff4cf1a85c2078229de54272f30 /arch/i386/mm/init.c
parentd41dee369bff3b9dcb6328d4d822926c28cc2594 (diff)
[PATCH] sparsemem memory model for i386
Provide the architecture specific implementation for SPARSEMEM for i386 SMP and NUMA systems. Signed-off-by: Andy Whitcroft <apw@shadowen.org> Signed-off-by: Dave Hansen <haveblue@us.ibm.com> Signed-off-by: Martin Bligh <mbligh@aracnet.com> Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'arch/i386/mm/init.c')
-rw-r--r--arch/i386/mm/init.c18
1 files changed, 9 insertions, 9 deletions
diff --git a/arch/i386/mm/init.c b/arch/i386/mm/init.c
index 666ca79fb50..48ebfab77a3 100644
--- a/arch/i386/mm/init.c
+++ b/arch/i386/mm/init.c
@@ -276,7 +276,9 @@ void __init one_highpage_init(struct page *page, int pfn, int bad_ppro)
276 SetPageReserved(page); 276 SetPageReserved(page);
277} 277}
278 278
279#ifndef CONFIG_DISCONTIGMEM 279#ifdef CONFIG_NUMA
280extern void set_highmem_pages_init(int);
281#else
280static void __init set_highmem_pages_init(int bad_ppro) 282static void __init set_highmem_pages_init(int bad_ppro)
281{ 283{
282 int pfn; 284 int pfn;
@@ -284,9 +286,7 @@ static void __init set_highmem_pages_init(int bad_ppro)
284 one_highpage_init(pfn_to_page(pfn), pfn, bad_ppro); 286 one_highpage_init(pfn_to_page(pfn), pfn, bad_ppro);
285 totalram_pages += totalhigh_pages; 287 totalram_pages += totalhigh_pages;
286} 288}
287#else 289#endif /* CONFIG_FLATMEM */
288extern void set_highmem_pages_init(int);
289#endif /* !CONFIG_DISCONTIGMEM */
290 290
291#else 291#else
292#define kmap_init() do { } while (0) 292#define kmap_init() do { } while (0)
@@ -297,10 +297,10 @@ extern void set_highmem_pages_init(int);
297unsigned long long __PAGE_KERNEL = _PAGE_KERNEL; 297unsigned long long __PAGE_KERNEL = _PAGE_KERNEL;
298unsigned long long __PAGE_KERNEL_EXEC = _PAGE_KERNEL_EXEC; 298unsigned long long __PAGE_KERNEL_EXEC = _PAGE_KERNEL_EXEC;
299 299
300#ifndef CONFIG_DISCONTIGMEM 300#ifdef CONFIG_NUMA
301#define remap_numa_kva() do {} while (0)
302#else
303extern void __init remap_numa_kva(void); 301extern void __init remap_numa_kva(void);
302#else
303#define remap_numa_kva() do {} while (0)
304#endif 304#endif
305 305
306static void __init pagetable_init (void) 306static void __init pagetable_init (void)
@@ -525,7 +525,7 @@ static void __init set_max_mapnr_init(void)
525#else 525#else
526 num_physpages = max_low_pfn; 526 num_physpages = max_low_pfn;
527#endif 527#endif
528#ifndef CONFIG_DISCONTIGMEM 528#ifdef CONFIG_FLATMEM
529 max_mapnr = num_physpages; 529 max_mapnr = num_physpages;
530#endif 530#endif
531} 531}
@@ -539,7 +539,7 @@ void __init mem_init(void)
539 int tmp; 539 int tmp;
540 int bad_ppro; 540 int bad_ppro;
541 541
542#ifndef CONFIG_DISCONTIGMEM 542#ifdef CONFIG_FLATMEM
543 if (!mem_map) 543 if (!mem_map)
544 BUG(); 544 BUG();
545#endif 545#endif