]> git.karo-electronics.de Git - mv-sheeva.git/blobdiff - kernel/trace/trace_functions.c
ftrace: move ftrace_special to trace.c
[mv-sheeva.git] / kernel / trace / trace_functions.c
index 82988c5336e0ffaae9367ab8a5df970a4b65b8e9..0a084656d7cfd4901bd4fdbb585bc9adbc1a6d6e 100644 (file)
@@ -9,47 +9,49 @@
  *  Copyright (C) 2004-2006 Ingo Molnar
  *  Copyright (C) 2004 William Lee Irwin III
  */
-#include <linux/fs.h>
 #include <linux/debugfs.h>
 #include <linux/uaccess.h>
 #include <linux/ftrace.h>
+#include <linux/fs.h>
 
 #include "trace.h"
 
-static notrace void function_reset(struct trace_array *tr)
+static void function_reset(struct trace_array *tr)
 {
        int cpu;
 
-       tr->time_start = now(tr->cpu);
+       tr->time_start = ftrace_now(tr->cpu);
 
        for_each_online_cpu(cpu)
                tracing_reset(tr->data[cpu]);
 }
 
-static notrace void start_function_trace(struct trace_array *tr)
+static void start_function_trace(struct trace_array *tr)
 {
        function_reset(tr);
+       atomic_inc(&trace_record_cmdline_enabled);
        tracing_start_function_trace();
 }
 
-static notrace void stop_function_trace(struct trace_array *tr)
+static void stop_function_trace(struct trace_array *tr)
 {
        tracing_stop_function_trace();
+       atomic_dec(&trace_record_cmdline_enabled);
 }
 
-static notrace void function_trace_init(struct trace_array *tr)
+static void function_trace_init(struct trace_array *tr)
 {
        if (tr->ctrl)
                start_function_trace(tr);
 }
 
-static notrace void function_trace_reset(struct trace_array *tr)
+static void function_trace_reset(struct trace_array *tr)
 {
        if (tr->ctrl)
                stop_function_trace(tr);
 }
 
-static notrace void function_trace_ctrl_update(struct trace_array *tr)
+static void function_trace_ctrl_update(struct trace_array *tr)
 {
        if (tr->ctrl)
                start_function_trace(tr);
@@ -63,6 +65,9 @@ static struct tracer function_trace __read_mostly =
        .init        = function_trace_init,
        .reset       = function_trace_reset,
        .ctrl_update = function_trace_ctrl_update,
+#ifdef CONFIG_FTRACE_SELFTEST
+       .selftest    = trace_selftest_startup_function,
+#endif
 };
 
 static __init int init_function_trace(void)