Messages in this thread Patch in this message | | | From | Frederic Weisbecker <> | Subject | [RFC PATCH 05/10] ftrace: Drop buffer check in function profiler callbacks | Date | Fri, 22 Jan 2010 02:16:17 +0100 |
| |
Drop the null check on hlist->hash. It is wasteful because we don't register the tracer if the buffer allocation failed, and the memory barrier in register_ftrace_graph() ensure it is visible to the callbacks right away.
Also we know the tracing callbacks won't be called after register_ftrace_graph(), so subsequent buffer resets are safe too.
Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com> Cc: Steven Rostedt <rostedt@goodmis.org> Cc: Li Zefan <lizf@cn.fujitsu.com> Cc: Lai Jiangshan <laijs@cn.fujitsu.com> --- kernel/trace/ftrace.c | 5 ----- 1 files changed, 0 insertions(+), 5 deletions(-)
diff --git a/kernel/trace/ftrace.c b/kernel/trace/ftrace.c index 3cdb35e..dfd8f7c 100644 --- a/kernel/trace/ftrace.c +++ b/kernel/trace/ftrace.c @@ -384,8 +384,6 @@ function_profile_call(unsigned long ip, unsigned long parent_ip) local_irq_save(flags); hlist = &__get_cpu_var(func_hlist_cpu); - if (!hlist->hash) - goto out; rec = function_find_hlist_node(hlist, ip); if (!rec) { @@ -415,8 +413,6 @@ static void profile_graph_return(struct ftrace_graph_ret *trace) local_irq_save(flags); hlist = &__get_cpu_var(func_hlist_cpu); - if (!hlist->hash) - goto out; calltime = trace->rettime - trace->calltime; @@ -439,7 +435,6 @@ static void profile_graph_return(struct ftrace_graph_ret *trace) if (rec) rec->time += calltime; - out: local_irq_restore(flags); } -- 1.6.2.3
| |