Commit f80063e9 authored by Paul Mackerras's avatar Paul Mackerras Committed by Linus Torvalds

[PATCH] ppc32: Reduce WARN_ON(0) to nothing

The last patch I sent means that we have WARN_ON(0) in a couple of
places when CONFIG_PREEMPT=n.  This patch makes that reduce to
nothing (rather than a conditional trap on a 0 value), and also makes
BUG_ON(0) reduce to nothing for completeness.
Signed-off-by: default avatarPaul Mackerras <paulus@samba.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent 717f8850
...@@ -24,6 +24,7 @@ struct bug_entry { ...@@ -24,6 +24,7 @@ struct bug_entry {
} while (0) } while (0)
#define BUG_ON(x) do { \ #define BUG_ON(x) do { \
if (!__builtin_constant_p(x) || (x)) { \
__asm__ __volatile__( \ __asm__ __volatile__( \
"1: twnei %0,0\n" \ "1: twnei %0,0\n" \
".section __bug_table,\"a\"\n\t" \ ".section __bug_table,\"a\"\n\t" \
...@@ -31,11 +32,13 @@ struct bug_entry { ...@@ -31,11 +32,13 @@ struct bug_entry {
".previous" \ ".previous" \
: : "r" (x), "i" (__LINE__), "i" (__FILE__), \ : : "r" (x), "i" (__LINE__), "i" (__FILE__), \
"i" (__FUNCTION__)); \ "i" (__FUNCTION__)); \
} \
} while (0) } while (0)
#define PAGE_BUG(page) do { BUG(); } while (0) #define PAGE_BUG(page) BUG()
#define WARN_ON(x) do { \ #define WARN_ON(x) do { \
if (!__builtin_constant_p(x) || (x)) { \
__asm__ __volatile__( \ __asm__ __volatile__( \
"1: twnei %0,0\n" \ "1: twnei %0,0\n" \
".section __bug_table,\"a\"\n\t" \ ".section __bug_table,\"a\"\n\t" \
...@@ -43,6 +46,7 @@ struct bug_entry { ...@@ -43,6 +46,7 @@ struct bug_entry {
".previous" \ ".previous" \
: : "r" (x), "i" (__LINE__ + BUG_WARNING_TRAP), \ : : "r" (x), "i" (__LINE__ + BUG_WARNING_TRAP), \
"i" (__FILE__), "i" (__FUNCTION__)); \ "i" (__FILE__), "i" (__FUNCTION__)); \
} \
} while (0) } while (0)
#endif #endif
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment