Messages in this thread Patch in this message | | | Date | Wed, 25 Apr 2012 14:33:32 +0900 | From | Minho Ban <> | Subject | [PATCH] tracing: Prevent wasting time evaluating parameters in trace_preempt_on/off |
| |
This fixes spending time for evaluating parameters in trace_preempt_on/off when the tracer config is off.
The patch mainly inspired by Steven Rostedt, thanks Steven.
Signed-off-by: Minho Ban <mhban@samsung.com> --- include/linux/ftrace.h | 8 ++++++-- 1 files changed, 6 insertions(+), 2 deletions(-)
diff --git a/include/linux/ftrace.h b/include/linux/ftrace.h index 72a6cab..bc7af66 100644 --- a/include/linux/ftrace.h +++ b/include/linux/ftrace.h @@ -485,8 +485,12 @@ static inline void __ftrace_enabled_restore(int enabled) extern void trace_preempt_on(unsigned long a0, unsigned long a1); extern void trace_preempt_off(unsigned long a0, unsigned long a1); #else - static inline void trace_preempt_on(unsigned long a0, unsigned long a1) { } - static inline void trace_preempt_off(unsigned long a0, unsigned long a1) { } +/* + * Use defines instead of static inlines because some arches will make code out + * of the CALLER_ADDR, when we really want these to be a real nop. + */ +# define trace_preempt_on(a0, a1) do { } while (0) +# define trace_preempt_off(a0, a1) do { } while (0) #endif #ifdef CONFIG_FTRACE_MCOUNT_RECORD -- 1.7.5.4
| |