Re: a52b1752c07 broke !SMP: error: implicit declaration of function `WARN_ON'

From: Al Viro
Date: Tue Jul 17 2007 - 19:54:17 EST


On Wed, Jul 18, 2007 at 01:24:46AM +0200, Uwe Kleine-K?nig wrote:
> Hello,
>
> kernel/timer.c (and some others as arch/arm/kernel/irq.c) include
> <linux/smp.h>, but not <linux/kernel.h>
>
> a52b1752c07 introduces usage of the WARN_ON macro in <linux/smp.h>, but
> doesn't pull in <linux/kernel.h>. (<asm/bug.h> is not enough, at least
> for arm, because WARN_ON uses printk there.)
>
> The obvious options are:
>
> 1) include <linux/kernel.h> in <linux/smp.h>, maybe conditioned by !SMP
> 2) include <linux/kernel.h> in all includers of <linux/smp.h>
> 3) remove the WARN_ONs introduced by a52b1752c07.
>
> WARN_ON is used in an inline function that isn't used in every file
> including <linux/smp.h>, so maybe updating the compiler might make
> the effort for 2) smaller!? (I'm using gcc 3.4.4)

4) turn the sucker into macro
-
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/