Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

UniCore32-bugfix: Remove definitions in asm/bug.h to solve difference between native and cross compiler

For kernel/bound.c being compiled by native compiler, it will generate following errors in gcc 4.4.3:
CC kernel/bounds.s
In file included from include/linux/bug.h:4,
from include/linux/page-flags.h:9,
from kernel/bounds.c:9:
arch/unicore32/include/asm/bug.h:22: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'void'
arch/unicore32/include/asm/bug.h:23: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'void'

So, we moved definitions in asm/bug.h to arch/unicore32/kernel/setup.h to solve the problem.

Signed-off-by: Guan Xuetao <gxt@mprc.pku.edu.cn>

+6 -5
-5
arch/unicore32/include/asm/bug.h
··· 19 19 extern void uc32_notify_die(const char *str, struct pt_regs *regs, 20 20 struct siginfo *info, unsigned long err, unsigned long trap); 21 21 22 - extern asmlinkage void __backtrace(void); 23 - extern asmlinkage void c_backtrace(unsigned long fp, int pmode); 24 - 25 - extern void __show_regs(struct pt_regs *); 26 - 27 22 #endif /* __UNICORE_BUG_H__ */
+6
arch/unicore32/kernel/setup.h
··· 30 30 extern void kernel_thread_helper(void); 31 31 32 32 extern void __init early_signal_init(void); 33 + 34 + extern asmlinkage void __backtrace(void); 35 + extern asmlinkage void c_backtrace(unsigned long fp, int pmode); 36 + 37 + extern void __show_regs(struct pt_regs *); 38 + 33 39 #endif