From: Dave Hansen I was compiling for my plain 'ol PC, and was getting unresolved symbols for get_memcfg_from_srat() and get_zholes_size(). The CONFIG_NUMA definition right now allows it to be turned on for plain old X86_PC. Does anyone know why this is? depends on SMP && HIGHMEM64G && (X86_PC || X86_NUMAQ || X86_GENERICARCH || (X86_SUMMIT && ACPI && !ACPI_HT_ONLY)) In any case, the summit code incorrectly assumes in at least 2 places that NUMA && !NUMAQ means summit. Someone was evidently trying to cover the generic subarch case, but that's already taken care of by the lovely config system and CONFIG_ACPI_SRAT. This patch fixes those assumptions and adds a nice little warning for people that try to #include srat.h without having srat support turned on. include/asm-i386/mmzone.h | 2 +- include/asm-i386/numnodes.h | 2 +- include/asm-i386/srat.h | 4 ++++ 3 files changed, 6 insertions(+), 2 deletions(-) diff -puN include/asm-i386/mmzone.h~summit-includes-fix include/asm-i386/mmzone.h --- 25/include/asm-i386/mmzone.h~summit-includes-fix 2003-09-07 11:57:18.000000000 -0700 +++ 25-akpm/include/asm-i386/mmzone.h 2003-09-07 11:57:18.000000000 -0700 @@ -119,7 +119,7 @@ static inline struct pglist_data *pfn_to #ifdef CONFIG_X86_NUMAQ #include -#elif CONFIG_NUMA /* summit or generic arch */ +#elif CONFIG_ACPI_SRAT #include #elif CONFIG_X86_PC #define get_memcfg_numa get_memcfg_numa_flat diff -puN include/asm-i386/numnodes.h~summit-includes-fix include/asm-i386/numnodes.h --- 25/include/asm-i386/numnodes.h~summit-includes-fix 2003-09-07 11:57:18.000000000 -0700 +++ 25-akpm/include/asm-i386/numnodes.h 2003-09-07 11:57:18.000000000 -0700 @@ -5,7 +5,7 @@ #ifdef CONFIG_X86_NUMAQ #include -#elif CONFIG_NUMA +#elif CONFIG_ACPI_SRAT #include #else #define MAX_NUMNODES 1 diff -puN include/asm-i386/srat.h~summit-includes-fix include/asm-i386/srat.h --- 25/include/asm-i386/srat.h~summit-includes-fix 2003-09-07 11:57:18.000000000 -0700 +++ 25-akpm/include/asm-i386/srat.h 2003-09-07 11:57:18.000000000 -0700 @@ -27,6 +27,10 @@ #ifndef _ASM_SRAT_H_ #define _ASM_SRAT_H_ +#ifndef CONFIG_ACPI_SRAT +#error CONFIG_ACPI_SRAT not defined, and srat.h header has been included +#endif + #define MAX_NUMNODES 8 extern void get_memcfg_from_srat(void); extern unsigned long *get_zholes_size(int); _