[PATCH] add BUG_ON to 2.4 #1

From: Robert Love (rml@tech9.net)
Date: Fri Jan 25 2002 - 18:14:05 EST


The following patch adds the BUG_ON (as seen on TV and 2.5) define to
the 2.4 kernel. This will help in portability and back-porting from 2.5
to 2.4, plus BUG_ON is a nice optimization and aids readability.

For the unaware, BUG_ON(condition) calls bug on !condition, which is
marked unlikely().

This is the generalized arch-independent BUG_ON as in later 2.5 kernels.

Marcelo, please apply.

        Robert Love

--- linux-2.4.18-pre7/include/linux/kernel.h Thu Jan 24 13:48:18 2002
+++ linux/include/linux/kernel.h Fri Jan 25 17:53:54 2002
@@ -11,6 +11,7 @@
 #include <linux/linkage.h>
 #include <linux/stddef.h>
 #include <linux/types.h>
+#include <linux/compiler.h>
 
 /* Optimization barrier */
 /* The "volatile" is due to gcc bugs */
@@ -181,4 +182,5 @@
         char _f[20-2*sizeof(long)-sizeof(int)]; /* Padding: libc5 uses this.. */
 };
 
+#define BUG_ON(condition) do { if (unlikely((condition)!=0)) BUG(); } while(0)
 #endif

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Thu Jan 31 2002 - 21:00:37 EST