Re: [PATCH] x86,edac: fix for compiler error in traps.c

From: Ingo Molnar
Date: Wed Apr 08 2009 - 23:59:03 EST



* Steven Rostedt <rostedt@xxxxxxxxxxx> wrote:

> Impact: compile fix
>
> I got this compile failure on both tip/tracing/core as well as on
> v2.6.30-rc1.
>
> LD .tmp_vmlinux1
> arch/x86/kernel/built-in.o: In function `do_nmi':
> (.text+0x3c18): undefined reference to `edac_handler_set'
> arch/x86/kernel/built-in.o: In function `do_nmi':
> (.text+0x3c48): undefined reference to `edac_atomic_assert_error'
> make: *** [.tmp_vmlinux1] Error 1
> [root@bxrhel51 linux-trace.git]# grep edac_handler_set
> [root@bxrhel51 linux-trace.git]# Grep edac_handler_set '*.[ch]'
> find . -name "*.[ch]" ! -type d | xargs grep "edac_handler_set"
> ./arch/x86/kernel/traps.c: if (edac_handler_set()) {
> ./include/linux/edac.h:extern int edac_handler_set(void);
> ./drivers/edac/edac_stub.c:int edac_handler_set(void)
> ./drivers/edac/edac_stub.c:EXPORT_SYMBOL_GPL(edac_handler_set);
>
> This patch seems to fix it.

> -obj-$(CONFIG_EDAC) := edac_stub.o
> +obj-$(CONFIG_EDAC) += edac_stub.o
> obj-$(CONFIG_EDAC_MM_EDAC) += edac_core.o

It's weird that this breaks for you. What other bit of the kernel
introduces CONFIG_EDAC rules?

And it's clean to start driver rules with the := assignment and then
append to them via +=. The initial += should not be needed.

Are you sure you have a pristine build environment?

Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/