On Sun, Nov 26, 2006 at 03:06:10PM -0800, Linus Torvalds wrote: > That said, Alexey did check it more than most patches like this get > checked (ie checking allmodconfig on i386, x86_64, alpha, arm), so it's a > bit unlucky that MIPS got bitten by this - it was not a badly tested > patch per se. > > Does the obvious fix (to include <linux/kernel.h> in irqflags.h) fix it > for you?
It changes the sympthoms: CC arch/mips/kernel/asm-offsets.s In file included from include/linux/irqflags.h:14, from include/asm/bitops.h:34, from include/linux/bitops.h:9, from include/linux/thread_info.h:20, from include/linux/preempt.h:9, from include/linux/spinlock.h:49, from include/linux/capability.h:45, from include/linux/sched.h:46, from arch/mips/kernel/asm-offsets.c:13: include/linux/kernel.h: In function ‘roundup_pow_of_two’: include/linux/kernel.h:169: warning: implicit declaration of function ‘fls_long’ In file included from include/linux/thread_info.h:20, from include/linux/preempt.h:9, from include/linux/spinlock.h:49, from include/linux/capability.h:45, from include/linux/sched.h:46, from arch/mips/kernel/asm-offsets.c:13: include/linux/bitops.h: At top level: include/linux/bitops.h:57: error: conflicting types for ‘fls_long’ include/linux/kernel.h:169: error: previous implicit declaration of ‘fls_long’ was here So the new problem is circular includes: ... <linux/bitops.h> -> <asm/bitops.h> -> <linux/irqflags.h> -> <linux/kernel.h> -> <linux/bitops.h> ... include/asm-mips/bitops.h needs to include irqflags because some older MIPS variants do not have any atomic instructions. So the fix needs to to break that loop. Ralf - 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/