From: Steven Rostedt Date: Fri, 29 Apr 2011 14:36:31 +0000 (-0400) Subject: ftrace: Make FTRACE_WARN_ON() work in if condition X-Git-Tag: v3.0-rc1~404^2~16^2~7 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=0778d9ad33898faab7bf6316108b471790376e35;p=platform%2Fkernel%2Flinux-stable.git ftrace: Make FTRACE_WARN_ON() work in if condition Let FTRACE_WARN_ON() be used as a stand alone statement or inside a conditional: if (FTRACE_WARN_ON(x)) Signed-off-by: Steven Rostedt --- diff --git a/kernel/trace/ftrace.c b/kernel/trace/ftrace.c index ee24fa1..4ff65599 100644 --- a/kernel/trace/ftrace.c +++ b/kernel/trace/ftrace.c @@ -39,16 +39,20 @@ #include "trace_stat.h" #define FTRACE_WARN_ON(cond) \ - do { \ - if (WARN_ON(cond)) \ + ({ \ + int ___r = cond; \ + if (WARN_ON(___r)) \ ftrace_kill(); \ - } while (0) + ___r; \ + }) #define FTRACE_WARN_ON_ONCE(cond) \ - do { \ - if (WARN_ON_ONCE(cond)) \ + ({ \ + int ___r = cond; \ + if (WARN_ON_ONCE(___r)) \ ftrace_kill(); \ - } while (0) + ___r; \ + }) /* hash bits for specific function selection */ #define FTRACE_HASH_BITS 7