Re: [S390] Use generic bug.

From: Heiko Carstens
Date: Tue Mar 06 2007 - 07:01:20 EST


On Mon, Mar 05, 2007 at 02:56:29PM -0800, David Miller wrote:
> From: Martin Schwidefsky <schwidefsky@xxxxxxxxxx>
> Date: Mon, 5 Mar 2007 23:43:54 +0100
>
> > + if (__builtin_constant_p(__ret_warn_on)) { \
> > + if (__ret_warn_on) \
> > + __EMIT_BUG(BUGFLAG_WARNING); \
>
> I see we'll have this construct on powerpc, parisc and now s390.
>
> But if it's going to trigger essentially at compile time, I
> think it's much better to BUILD_BUG_ON() in this case instead
> of counting on the code path to actually run and the user to
> notice and report the kernel log message.

So something like WARN_ON(1) won't compile, but BUG_ON(1) still
would? Seems odd to me.
Also since there is nothing like WARN(), you have to use WARN_ON(1).
Btw.: sparc64 has plenty of these ;)

I would prefer to have something like a per arch defined WARN()
and a common code WARN_ON() like we have it already for BUG_ON().
Then I would agree: if WARN_ON() is used with a constant the build
should fail. Just to tell the author that he did something wrong
or simply should use WARN(). And of course the existing BUG_ON()
could be converted as well.
-
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/