blob: e3c5fbfcdd365909ebbb2d5030f0eff41470beae [file] [log] [blame]
Steven Noonanfb1b6d82008-09-19 03:06:43 -07001/*
2 * nop tracer
3 *
4 * Copyright (C) 2008 Steven Noonan <steven@uplinklabs.net>
5 *
6 */
7
8#include <linux/module.h>
9#include <linux/fs.h>
10#include <linux/debugfs.h>
11#include <linux/ftrace.h>
12
13#include "trace.h"
14
15static struct trace_array *ctx_trace;
16
17static void start_nop_trace(struct trace_array *tr)
18{
19 /* Nothing to do! */
20}
21
22static void stop_nop_trace(struct trace_array *tr)
23{
24 /* Nothing to do! */
25}
26
27static void nop_trace_init(struct trace_array *tr)
28{
Frédéric Weisbecker35cb5ed2008-09-21 20:10:14 +020029 int cpu;
Steven Noonanfb1b6d82008-09-19 03:06:43 -070030 ctx_trace = tr;
31
Frédéric Weisbecker35cb5ed2008-09-21 20:10:14 +020032 for_each_online_cpu(cpu)
Steven Rostedt3928a8a2008-09-29 23:02:41 -040033 tracing_reset(tr, cpu);
Frédéric Weisbecker35cb5ed2008-09-21 20:10:14 +020034
Steven Noonanfb1b6d82008-09-19 03:06:43 -070035 if (tr->ctrl)
36 start_nop_trace(tr);
37}
38
39static void nop_trace_reset(struct trace_array *tr)
40{
41 if (tr->ctrl)
42 stop_nop_trace(tr);
43}
44
Frédéric Weisbecker43a15382008-09-21 20:16:30 +020045struct tracer nop_trace __read_mostly =
Steven Noonanfb1b6d82008-09-19 03:06:43 -070046{
47 .name = "nop",
48 .init = nop_trace_init,
49 .reset = nop_trace_reset,
Steven Noonanfb1b6d82008-09-19 03:06:43 -070050#ifdef CONFIG_FTRACE_SELFTEST
51 .selftest = trace_selftest_startup_nop,
52#endif
53};
54