From: Matthew Dobson <colpatch@us.ibm.com>
To: linux-kernel@vger.kernel.org
Cc: mbligh@aracnet.com, john stultz <johnstul@us.ibm.com>,
Andrew Morton <akpm@digeo.com>, Greg KH <greg@kroah.com>
Subject: [PATCH] Fix X86_GENERICARCH & NUMA compile error (1/2)
Date: Fri, 19 Dec 2003 12:11:50 -0800 [thread overview]
Message-ID: <3FE35B86.6090901@us.ibm.com> (raw)
[-- Attachment #1: Type: text/plain, Size: 726 bytes --]
Trying to build a kernel with both CONFIG_X86_GENERICARCH and
CONFIG_NUMA on results in a compile error. This patch fixes that build
problem by adding a config option for NUMA on Summit which is used to
correctly conditionally compile arch/i386/kernel/summit.c and properly
ifdef the function calls used in generic code. Please apply.
Running make -j24 bzImage
arch/i386/mach-generic/built-in.o: In function `mps_oem_check':
arch/i386/mach-generic/built-in.o(.text+0x3ce): undefined reference to
`setup_summit'
arch/i386/mach-generic/built-in.o: In function `acpi_madt_oem_check':
arch/i386/mach-generic/built-in.o(.text+0x468): undefined reference to
`setup_summit'
make: *** [.tmp_vmlinux1] Error 1
Cheers!
-Matt
[-- Attachment #2: 01-genericarch_fix.patch --]
[-- Type: text/plain, Size: 3460 bytes --]
diff -Nurp --exclude-from=/home/mcd/.dontdiff linux-2.6.0-vanilla/arch/i386/Kconfig linux-2.6.0-01/arch/i386/Kconfig
--- linux-2.6.0-vanilla/arch/i386/Kconfig Wed Dec 17 18:58:16 2003
+++ linux-2.6.0-01/arch/i386/Kconfig Fri Dec 19 11:35:41 2003
@@ -115,10 +115,15 @@ config ACPI_SRAT
default y
depends on NUMA && (X86_SUMMIT || X86_GENERICARCH)
+config X86_SUMMIT_NUMA
+ bool
+ default y
+ depends on NUMA && (X86_SUMMIT || X86_GENERICARCH)
+
config X86_CYCLONE_TIMER
- bool
- default y
- depends on X86_SUMMIT || X86_GENERICARCH
+ bool
+ default y
+ depends on X86_SUMMIT || X86_GENERICARCH
config ES7000_CLUSTERED_APIC
bool
diff -Nurp --exclude-from=/home/mcd/.dontdiff linux-2.6.0-vanilla/arch/i386/kernel/Makefile linux-2.6.0-01/arch/i386/kernel/Makefile
--- linux-2.6.0-vanilla/arch/i386/kernel/Makefile Wed Dec 17 18:58:16 2003
+++ linux-2.6.0-01/arch/i386/kernel/Makefile Fri Dec 19 11:35:41 2003
@@ -24,7 +24,7 @@ obj-$(CONFIG_X86_MPPARSE) += mpparse.o
obj-$(CONFIG_X86_LOCAL_APIC) += apic.o nmi.o
obj-$(CONFIG_X86_IO_APIC) += io_apic.o
obj-$(CONFIG_X86_NUMAQ) += numaq.o
-obj-$(CONFIG_X86_SUMMIT) += summit.o
+obj-$(CONFIG_X86_SUMMIT_NUMA) += summit.o
obj-$(CONFIG_EDD) += edd.o
obj-$(CONFIG_MODULES) += module.o
obj-y += sysenter.o vsyscall.o
diff -Nurp --exclude-from=/home/mcd/.dontdiff linux-2.6.0-vanilla/arch/i386/kernel/summit.c linux-2.6.0-01/arch/i386/kernel/summit.c
--- linux-2.6.0-vanilla/arch/i386/kernel/summit.c Wed Dec 17 18:58:49 2003
+++ linux-2.6.0-01/arch/i386/kernel/summit.c Fri Dec 19 11:36:03 2003
@@ -29,9 +29,8 @@
#include <linux/mm.h>
#include <linux/init.h>
#include <asm/io.h>
-#include <mach_mpparse.h>
+#include <asm/mach-summit/mach_mpparse.h>
-#ifdef CONFIG_NUMA
static void __init setup_pci_node_map_for_wpeg(int wpeg_num, struct rio_table_hdr *rth,
struct scal_detail **scal_nodes, struct rio_detail **rio_nodes){
int twst_num = 0, node = 0, first_bus = 0;
@@ -169,4 +168,3 @@ void __init setup_summit(void)
/* It's a Winnipeg, it's got PCI Busses */
setup_pci_node_map_for_wpeg(i, rio_table_hdr, scal_devs, rio_devs);
}
-#endif /* CONFIG_NUMA */
diff -Nurp --exclude-from=/home/mcd/.dontdiff linux-2.6.0-vanilla/include/asm-i386/mach-summit/mach_mpparse.h linux-2.6.0-01/include/asm-i386/mach-summit/mach_mpparse.h
--- linux-2.6.0-vanilla/include/asm-i386/mach-summit/mach_mpparse.h Wed Dec 17 18:58:48 2003
+++ linux-2.6.0-01/include/asm-i386/mach-summit/mach_mpparse.h Fri Dec 19 11:36:03 2003
@@ -5,11 +5,11 @@
extern int use_cyclone;
-#ifdef CONFIG_NUMA
+#ifdef CONFIG_X86_SUMMIT_NUMA
extern void setup_summit(void);
-#else /* !CONFIG_NUMA */
+#else
#define setup_summit() {}
-#endif /* CONFIG_NUMA */
+#endif
static inline void mpc_oem_bus_info(struct mpc_config_bus *m, char *name,
struct mpc_config_translation *translation)
diff -Nurp --exclude-from=/home/mcd/.dontdiff linux-2.6.0-vanilla/include/asm-i386/mpspec.h linux-2.6.0-01/include/asm-i386/mpspec.h
--- linux-2.6.0-vanilla/include/asm-i386/mpspec.h Wed Dec 17 18:57:58 2003
+++ linux-2.6.0-01/include/asm-i386/mpspec.h Fri Dec 19 11:35:41 2003
@@ -27,10 +27,6 @@ extern unsigned long mp_lapic_addr;
extern int pic_mode;
extern int using_apic_timer;
-#ifdef CONFIG_X86_SUMMIT
-extern void setup_summit (void);
-#endif
-
#ifdef CONFIG_ACPI_BOOT
extern void mp_register_lapic (u8 id, u8 enabled);
extern void mp_register_lapic_address (u64 address);
reply other threads:[~2003-12-19 20:16 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=3FE35B86.6090901@us.ibm.com \
--to=colpatch@us.ibm.com \
--cc=akpm@digeo.com \
--cc=greg@kroah.com \
--cc=johnstul@us.ibm.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mbligh@aracnet.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.