[tip:tracing/ftrace] tracing: add comment for use of double __builtin_consant_p

Steven Rostedt
2009-03-13T05:37:50Z

Commit-ID: bdc067582b8b71c7771bab076bbc51569c594fb4
Gitweb: http://git.kernel.org/tip/bdc067582b8b71c7771bab076bbc51569c594fb4
Author: Steven Rostedt <srostedt@redhat.com>
AuthorDate: Fri, 13 Mar 2009 00:12:52 -0400
Commit: Steven Rostedt <srostedt@redhat.com>
CommitDate: Fri, 13 Mar 2009 00:15:46 -0400

tracing: add comment for use of double __builtin_consant_p

Impact: documentation

The use of the double __builtin_contant_p checks in the event_trace_printk
can be confusing to developers and reviewers. This patch adds a comment
to explain why it is there.

Requested-by: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
LKML-Reference: <20090313122235.43EB.A69D9226@jp.fujitsu.com>
Signed-off-by: Steven Rostedt <srostedt@redhat.com>

---
kernel/trace/trace.h | 5 +++++
1 files changed, 5 insertions(+), 0 deletions(-)

diff --git a/kernel/trace/trace.h b/kernel/trace/trace.h
index 35cfa7b..67595b8 100644
--- a/kernel/trace/trace.h
+++ b/kernel/trace/trace.h
@@ -776,6 +776,11 @@ extern struct ftrace_event_call __stop_ftrace_events[];
extern const char *__start___trace_bprintk_fmt[];
extern const char *__stop___trace_bprintk_fmt[];

+/*
+ * The double __builtin_constant_p is because gcc will give us an error
+ * if we try to allocate the static variable to fmt if it is not a
+ * constant. Even with the outer if statement optimizing out.
+ */
#define event_trace_printk(ip, fmt, args...) \
do { \
__trace_printk_check_format(fmt, ##args); \