From: Randy Dunlap <[EMAIL PROTECTED]> Handle BUG=n, GENERIC_BUG=n to prevent build errors:
arch/x86_64/kernel/built-in.o: In function `die': (.text+0x3b3c): undefined reference to `report_bug' arch/x86_64/kernel/built-in.o: In function `module_arch_cleanup': (.text+0x10b60): undefined reference to `module_bug_cleanup' arch/x86_64/kernel/built-in.o: In function `module_finalize': (.text+0x10c98): undefined reference to `module_bug_finalize' Signed-off-by: Randy Dunlap <[EMAIL PROTECTED]> --- include/linux/bug.h | 26 ++++++++++++++++++++------ 1 file changed, 20 insertions(+), 6 deletions(-) --- linux-2619-rc5mm2.orig/include/linux/bug.h +++ linux-2619-rc5mm2/include/linux/bug.h @@ -3,6 +3,12 @@ #include <asm/bug.h> +enum bug_trap_type { + BUG_TRAP_TYPE_NONE = 0, + BUG_TRAP_TYPE_WARN = 1, + BUG_TRAP_TYPE_BUG = 2, +}; + #ifdef CONFIG_GENERIC_BUG #include <linux/module.h> #include <asm-generic/bug.h> @@ -12,12 +18,6 @@ static inline int is_warning_bug(const s return bug->flags & BUGFLAG_WARNING; } -enum bug_trap_type { - BUG_TRAP_TYPE_NONE = 0, - BUG_TRAP_TYPE_WARN = 1, - BUG_TRAP_TYPE_BUG = 2, -}; - const struct bug_entry *find_bug(unsigned long bugaddr); enum bug_trap_type report_bug(unsigned long bug_addr); @@ -29,5 +29,19 @@ void module_bug_cleanup(struct module *) /* These are defined by the architecture */ int is_valid_bugaddr(unsigned long addr); +#else /* !CONFIG_GENERIC_BUG */ + +static inline enum bug_trap_type report_bug(unsigned long bug_addr) +{ + return BUG_TRAP_TYPE_BUG; +} +static inline int module_bug_finalize(const Elf_Ehdr *hdr, + const Elf_Shdr *sechdrs, + struct module *mod) +{ + return 0; +} +static inline void module_bug_cleanup(struct module *mod) {} + #endif /* CONFIG_GENERIC_BUG */ #endif /* _LINUX_BUG_H */ --- - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/