From: Andrew Morton - Declarations always go in headers, please - linux/mmzone.h only includes asm/mmzone.h if !CONFIG_NEED_MULTIPLE_NODES. Ug. Cc: Keith Mannthey Signed-off-by: Andrew Morton --- arch/i386/kernel/setup.c | 6 +----- arch/i386/mm/discontig.c | 3 +-- include/asm-i386/mmzone.h | 6 ++++++ 3 files changed, 8 insertions(+), 7 deletions(-) diff -puN arch/i386/kernel/setup.c~convert-i386-numa-kva-space-to-bootmem-tidy arch/i386/kernel/setup.c --- a/arch/i386/kernel/setup.c~convert-i386-numa-kva-space-to-bootmem-tidy +++ a/arch/i386/kernel/setup.c @@ -53,6 +53,7 @@ #include #include #include +#include #include #include #include @@ -1092,9 +1093,6 @@ extern unsigned long __init setup_memory extern void zone_sizes_init(void); #endif /* !CONFIG_NEED_MULTIPLE_NODES */ -#ifdef CONFIG_NUMA -extern void numa_kva_reserve(void); -#endif void __init setup_bootmem_allocator(void) { unsigned long bootmap_size; @@ -1150,9 +1148,7 @@ void __init setup_bootmem_allocator(void */ find_smp_config(); #endif -#ifdef CONFIG_NUMA numa_kva_reserve(); -#endif #ifdef CONFIG_BLK_DEV_INITRD if (LOADER_TYPE && INITRD_START) { if (INITRD_START + INITRD_SIZE <= (max_low_pfn << PAGE_SHIFT)) { diff -puN arch/i386/mm/discontig.c~convert-i386-numa-kva-space-to-bootmem-tidy arch/i386/mm/discontig.c --- a/arch/i386/mm/discontig.c~convert-i386-numa-kva-space-to-bootmem-tidy +++ a/arch/i386/mm/discontig.c @@ -361,10 +361,9 @@ unsigned long __init setup_memory(void) return max_low_pfn; } -void __init numa_kva_reserve (void) +void __init numa_kva_reserve(void) { reserve_bootmem(PFN_PHYS(kva_start_pfn),PFN_PHYS(kva_pages)); - } void __init zone_sizes_init(void) diff -puN include/asm-i386/mmzone.h~convert-i386-numa-kva-space-to-bootmem-tidy include/asm-i386/mmzone.h --- a/include/asm-i386/mmzone.h~convert-i386-numa-kva-space-to-bootmem-tidy +++ a/include/asm-i386/mmzone.h @@ -38,10 +38,16 @@ static inline void get_memcfg_numa(void) } extern int early_pfn_to_nid(unsigned long pfn); +extern void numa_kva_reserve(void); #else /* !CONFIG_NUMA */ + #define get_memcfg_numa get_memcfg_numa_flat #define get_zholes_size(n) (0) + +static inline void numa_kva_reserve(void) +{ +} #endif /* CONFIG_NUMA */ #ifdef CONFIG_DISCONTIGMEM _