diff options
Diffstat (limited to 'kernel/trace/trace_mmiotrace.c')
-rw-r--r-- | kernel/trace/trace_mmiotrace.c | 25 |
1 files changed, 10 insertions, 15 deletions
diff --git a/kernel/trace/trace_mmiotrace.c b/kernel/trace/trace_mmiotrace.c index e62cbf78eab6..2a98a206acc2 100644 --- a/kernel/trace/trace_mmiotrace.c +++ b/kernel/trace/trace_mmiotrace.c | |||
@@ -32,34 +32,29 @@ static void mmio_reset_data(struct trace_array *tr) | |||
32 | tracing_reset(tr, cpu); | 32 | tracing_reset(tr, cpu); |
33 | } | 33 | } |
34 | 34 | ||
35 | static void mmio_trace_init(struct trace_array *tr) | 35 | static int mmio_trace_init(struct trace_array *tr) |
36 | { | 36 | { |
37 | pr_debug("in %s\n", __func__); | 37 | pr_debug("in %s\n", __func__); |
38 | mmio_trace_array = tr; | 38 | mmio_trace_array = tr; |
39 | if (tr->ctrl) { | 39 | |
40 | mmio_reset_data(tr); | 40 | mmio_reset_data(tr); |
41 | enable_mmiotrace(); | 41 | enable_mmiotrace(); |
42 | } | 42 | return 0; |
43 | } | 43 | } |
44 | 44 | ||
45 | static void mmio_trace_reset(struct trace_array *tr) | 45 | static void mmio_trace_reset(struct trace_array *tr) |
46 | { | 46 | { |
47 | pr_debug("in %s\n", __func__); | 47 | pr_debug("in %s\n", __func__); |
48 | if (tr->ctrl) | 48 | |
49 | disable_mmiotrace(); | 49 | disable_mmiotrace(); |
50 | mmio_reset_data(tr); | 50 | mmio_reset_data(tr); |
51 | mmio_trace_array = NULL; | 51 | mmio_trace_array = NULL; |
52 | } | 52 | } |
53 | 53 | ||
54 | static void mmio_trace_ctrl_update(struct trace_array *tr) | 54 | static void mmio_trace_start(struct trace_array *tr) |
55 | { | 55 | { |
56 | pr_debug("in %s\n", __func__); | 56 | pr_debug("in %s\n", __func__); |
57 | if (tr->ctrl) { | 57 | mmio_reset_data(tr); |
58 | mmio_reset_data(tr); | ||
59 | enable_mmiotrace(); | ||
60 | } else { | ||
61 | disable_mmiotrace(); | ||
62 | } | ||
63 | } | 58 | } |
64 | 59 | ||
65 | static int mmio_print_pcidev(struct trace_seq *s, const struct pci_dev *dev) | 60 | static int mmio_print_pcidev(struct trace_seq *s, const struct pci_dev *dev) |
@@ -296,10 +291,10 @@ static struct tracer mmio_tracer __read_mostly = | |||
296 | .name = "mmiotrace", | 291 | .name = "mmiotrace", |
297 | .init = mmio_trace_init, | 292 | .init = mmio_trace_init, |
298 | .reset = mmio_trace_reset, | 293 | .reset = mmio_trace_reset, |
294 | .start = mmio_trace_start, | ||
299 | .pipe_open = mmio_pipe_open, | 295 | .pipe_open = mmio_pipe_open, |
300 | .close = mmio_close, | 296 | .close = mmio_close, |
301 | .read = mmio_read, | 297 | .read = mmio_read, |
302 | .ctrl_update = mmio_trace_ctrl_update, | ||
303 | .print_line = mmio_print_line, | 298 | .print_line = mmio_print_line, |
304 | }; | 299 | }; |
305 | 300 | ||