ftrace: remove ctrl_update method
authorSteven Rostedt <srostedt@redhat.com>
Sat, 8 Nov 2008 03:36:02 +0000 (22:36 -0500)
committerIngo Molnar <mingo@elte.hu>
Sat, 8 Nov 2008 08:51:34 +0000 (09:51 +0100)
Impact: Remove the ctrl_update tracer method

With the new quick start/stop method of tracing, the ctrl_update
method is out of date.

Signed-off-by: Steven Rostedt <srostedt@redhat.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
kernel/trace/trace.c
kernel/trace/trace.h
kernel/trace/trace_boot.c
kernel/trace/trace_functions.c
kernel/trace/trace_irqsoff.c
kernel/trace/trace_mmiotrace.c
kernel/trace/trace_nop.c
kernel/trace/trace_sched_switch.c
kernel/trace/trace_sched_wakeup.c
kernel/trace/trace_selftest.c
kernel/trace/trace_sysprof.c

index dbbdacfaaf9ece6a2bbbd15b541fdf1e0e8a804e..9e83188172a1395c8cd2ac983d912596dc15e0c0 100644 (file)
@@ -3357,8 +3357,6 @@ __init static int tracer_alloc_buffers(void)
 
        register_tracer(&nop_trace);
 #ifdef CONFIG_BOOT_TRACER
-       /* We don't want to launch sched_switch tracer yet */
-       global_trace.ctrl = 0;
        register_tracer(&boot_tracer);
        current_trace = &boot_tracer;
        current_trace->init(&global_trace);
index 25abfc45f081cd8ba229f569411b28120c1559a7..e481edaae1c42c951f9c8cf0aaa7de0d1356fee0 100644 (file)
@@ -244,7 +244,6 @@ struct tracer {
        ssize_t                 (*read)(struct trace_iterator *iter,
                                        struct file *filp, char __user *ubuf,
                                        size_t cnt, loff_t *ppos);
-       void                    (*ctrl_update)(struct trace_array *tr);
 #ifdef CONFIG_FTRACE_STARTUP_TEST
        int                     (*selftest)(struct tracer *trace,
                                            struct trace_array *tr);
index 0203c10540124009c765b449f8b295648b68ccd1..8f71915e8bb4d9c63b67735cfacb62fca9ca9834 100644 (file)
@@ -58,14 +58,6 @@ static void boot_trace_init(struct trace_array *tr)
        tracing_sched_switch_assign_trace(tr);
 }
 
-static void boot_trace_ctrl_update(struct trace_array *tr)
-{
-       if (tr->ctrl)
-               enable_boot_trace();
-       else
-               disable_boot_trace();
-}
-
 static enum print_line_t initcall_print_line(struct trace_iterator *iter)
 {
        int ret;
@@ -102,7 +94,6 @@ struct tracer boot_tracer __read_mostly =
        .name           = "initcall",
        .init           = boot_trace_init,
        .reset          = reset_boot_trace,
-       .ctrl_update    = boot_trace_ctrl_update,
        .print_line     = initcall_print_line,
 };
 
index 9f1b0de712848e49c800261c1b0021558e387213..e980b872bef526072cd29ffe08194090802d8ed8 100644 (file)
@@ -54,14 +54,6 @@ static void function_trace_reset(struct trace_array *tr)
                stop_function_trace(tr);
 }
 
-static void function_trace_ctrl_update(struct trace_array *tr)
-{
-       if (tr->ctrl)
-               start_function_trace(tr);
-       else
-               stop_function_trace(tr);
-}
-
 static void function_trace_start(struct trace_array *tr)
 {
        function_reset(tr);
@@ -73,7 +65,6 @@ static struct tracer function_trace __read_mostly =
        .init        = function_trace_init,
        .reset       = function_trace_reset,
        .start       = function_trace_start,
-       .ctrl_update = function_trace_ctrl_update,
 #ifdef CONFIG_FTRACE_SELFTEST
        .selftest    = trace_selftest_startup_function,
 #endif
index 3509086cdc4cfe0cfea4d5c6eb2d697461d4c215..ffdf592a54e367dd3ceff25732ba807970c60575 100644 (file)
@@ -394,14 +394,6 @@ static void irqsoff_tracer_reset(struct trace_array *tr)
                stop_irqsoff_tracer(tr);
 }
 
-static void irqsoff_tracer_ctrl_update(struct trace_array *tr)
-{
-       if (tr->ctrl)
-               start_irqsoff_tracer(tr);
-       else
-               stop_irqsoff_tracer(tr);
-}
-
 static void irqsoff_tracer_start(struct trace_array *tr)
 {
        tracer_enabled = 1;
@@ -442,7 +434,6 @@ static struct tracer irqsoff_tracer __read_mostly =
        .stop           = irqsoff_tracer_stop,
        .open           = irqsoff_tracer_open,
        .close          = irqsoff_tracer_close,
-       .ctrl_update    = irqsoff_tracer_ctrl_update,
        .print_max      = 1,
 #ifdef CONFIG_FTRACE_SELFTEST
        .selftest    = trace_selftest_startup_irqsoff,
@@ -470,7 +461,6 @@ static struct tracer preemptoff_tracer __read_mostly =
        .stop           = irqsoff_tracer_stop,
        .open           = irqsoff_tracer_open,
        .close          = irqsoff_tracer_close,
-       .ctrl_update    = irqsoff_tracer_ctrl_update,
        .print_max      = 1,
 #ifdef CONFIG_FTRACE_SELFTEST
        .selftest    = trace_selftest_startup_preemptoff,
@@ -500,7 +490,6 @@ static struct tracer preemptirqsoff_tracer __read_mostly =
        .stop           = irqsoff_tracer_stop,
        .open           = irqsoff_tracer_open,
        .close          = irqsoff_tracer_close,
-       .ctrl_update    = irqsoff_tracer_ctrl_update,
        .print_max      = 1,
 #ifdef CONFIG_FTRACE_SELFTEST
        .selftest    = trace_selftest_startup_preemptirqsoff,
index f28484618ff0de99b0c9d5062f23fe8eec25070a..fa9354e78b574b1d7f78179799819052ddf838e7 100644 (file)
@@ -49,15 +49,10 @@ static void mmio_trace_reset(struct trace_array *tr)
        mmio_trace_array = NULL;
 }
 
-static void mmio_trace_ctrl_update(struct trace_array *tr)
+static void mmio_trace_start(struct trace_array *tr)
 {
        pr_debug("in %s\n", __func__);
-       if (tr->ctrl) {
-               mmio_reset_data(tr);
-               enable_mmiotrace();
-       } else {
-               disable_mmiotrace();
-       }
+       mmio_reset_data(tr);
 }
 
 static int mmio_print_pcidev(struct trace_seq *s, const struct pci_dev *dev)
@@ -298,10 +293,10 @@ static struct tracer mmio_tracer __read_mostly =
        .name           = "mmiotrace",
        .init           = mmio_trace_init,
        .reset          = mmio_trace_reset,
+       .start          = mmio_trace_start,
        .pipe_open      = mmio_pipe_open,
        .close          = mmio_close,
        .read           = mmio_read,
-       .ctrl_update    = mmio_trace_ctrl_update,
        .print_line     = mmio_print_line,
 };
 
index 4592b4862515c9d1680417f4fe46bc192999d661..e3c5fbfcdd365909ebbb2d5030f0eff41470beae 100644 (file)
@@ -42,21 +42,11 @@ static void nop_trace_reset(struct trace_array *tr)
                stop_nop_trace(tr);
 }
 
-static void nop_trace_ctrl_update(struct trace_array *tr)
-{
-       /* When starting a new trace, reset the buffers */
-       if (tr->ctrl)
-               start_nop_trace(tr);
-       else
-               stop_nop_trace(tr);
-}
-
 struct tracer nop_trace __read_mostly =
 {
        .name           = "nop",
        .init           = nop_trace_init,
        .reset          = nop_trace_reset,
-       .ctrl_update    = nop_trace_ctrl_update,
 #ifdef CONFIG_FTRACE_SELFTEST
        .selftest       = trace_selftest_startup_nop,
 #endif
index 79410db64d6f31742fc9ad77b8bef4bddec29010..7b73fd11e4aa2928704046b6c2807477aa6a82dd 100644 (file)
@@ -220,15 +220,6 @@ static void sched_switch_trace_reset(struct trace_array *tr)
                stop_sched_trace(tr);
 }
 
-static void sched_switch_trace_ctrl_update(struct trace_array *tr)
-{
-       /* When starting a new trace, reset the buffers */
-       if (tr->ctrl)
-               start_sched_trace(tr);
-       else
-               stop_sched_trace(tr);
-}
-
 static void sched_switch_trace_start(struct trace_array *tr)
 {
        sched_switch_reset(tr);
@@ -247,7 +238,6 @@ static struct tracer sched_switch_trace __read_mostly =
        .reset          = sched_switch_trace_reset,
        .start          = sched_switch_trace_start,
        .stop           = sched_switch_trace_stop,
-       .ctrl_update    = sched_switch_trace_ctrl_update,
 #ifdef CONFIG_FTRACE_SELFTEST
        .selftest    = trace_selftest_startup_sched_switch,
 #endif
index 240577bc8ba5f5bcf72ad2d743c827a0da8042a6..23e54d4e4d92b568b782cf7dda8e48dc3981bad2 100644 (file)
@@ -348,14 +348,6 @@ static void wakeup_tracer_reset(struct trace_array *tr)
        }
 }
 
-static void wakeup_tracer_ctrl_update(struct trace_array *tr)
-{
-       if (tr->ctrl)
-               start_wakeup_tracer(tr);
-       else
-               stop_wakeup_tracer(tr);
-}
-
 static void wakeup_tracer_start(struct trace_array *tr)
 {
        wakeup_reset(tr);
@@ -393,7 +385,6 @@ static struct tracer wakeup_tracer __read_mostly =
        .stop           = wakeup_tracer_stop,
        .open           = wakeup_tracer_open,
        .close          = wakeup_tracer_close,
-       .ctrl_update    = wakeup_tracer_ctrl_update,
        .print_max      = 1,
 #ifdef CONFIG_FTRACE_SELFTEST
        .selftest    = trace_selftest_startup_wakeup,
index 90bc752a7580b3d4800417d2f7a28abe604c1d65..74693434047423ece3e020d898ed83d2f3af6c66 100644 (file)
@@ -134,13 +134,13 @@ int trace_selftest_startup_dynamic_tracing(struct tracer *trace,
        msleep(100);
 
        /* stop the tracing. */
-       tr->ctrl = 0;
-       trace->ctrl_update(tr);
+       tracing_stop();
        ftrace_enabled = 0;
 
        /* check the trace buffer */
        ret = trace_test_buffer(tr, &count);
        trace->reset(tr);
+       tracing_start();
 
        /* we should only have one item */
        if (!ret && count != 1) {
@@ -148,6 +148,7 @@ int trace_selftest_startup_dynamic_tracing(struct tracer *trace,
                ret = -1;
                goto out;
        }
+
  out:
        ftrace_enabled = save_ftrace_enabled;
        tracer_enabled = save_tracer_enabled;
@@ -185,13 +186,13 @@ trace_selftest_startup_function(struct tracer *trace, struct trace_array *tr)
        /* Sleep for a 1/10 of a second */
        msleep(100);
        /* stop the tracing. */
-       tr->ctrl = 0;
-       trace->ctrl_update(tr);
+       tracing_stop();
        ftrace_enabled = 0;
 
        /* check the trace buffer */
        ret = trace_test_buffer(tr, &count);
        trace->reset(tr);
+       tracing_start();
 
        if (!ret && !count) {
                printk(KERN_CONT ".. no entries found ..");
@@ -232,13 +233,13 @@ trace_selftest_startup_irqsoff(struct tracer *trace, struct trace_array *tr)
        udelay(100);
        local_irq_enable();
        /* stop the tracing. */
-       tr->ctrl = 0;
-       trace->ctrl_update(tr);
+       tracing_stop();
        /* check both trace buffers */
        ret = trace_test_buffer(tr, NULL);
        if (!ret)
                ret = trace_test_buffer(&max_tr, &count);
        trace->reset(tr);
+       tracing_start();
 
        if (!ret && !count) {
                printk(KERN_CONT ".. no entries found ..");
@@ -269,13 +270,13 @@ trace_selftest_startup_preemptoff(struct tracer *trace, struct trace_array *tr)
        udelay(100);
        preempt_enable();
        /* stop the tracing. */
-       tr->ctrl = 0;
-       trace->ctrl_update(tr);
+       tracing_stop();
        /* check both trace buffers */
        ret = trace_test_buffer(tr, NULL);
        if (!ret)
                ret = trace_test_buffer(&max_tr, &count);
        trace->reset(tr);
+       tracing_start();
 
        if (!ret && !count) {
                printk(KERN_CONT ".. no entries found ..");
@@ -312,27 +313,30 @@ trace_selftest_startup_preemptirqsoff(struct tracer *trace, struct trace_array *
        local_irq_enable();
 
        /* stop the tracing. */
-       tr->ctrl = 0;
-       trace->ctrl_update(tr);
+       tracing_stop();
        /* check both trace buffers */
        ret = trace_test_buffer(tr, NULL);
-       if (ret)
+       if (ret) {
+               tracing_start();
                goto out;
+       }
 
        ret = trace_test_buffer(&max_tr, &count);
-       if (ret)
+       if (ret) {
+               tracing_start();
                goto out;
+       }
 
        if (!ret && !count) {
                printk(KERN_CONT ".. no entries found ..");
                ret = -1;
+               tracing_start();
                goto out;
        }
 
        /* do the test by disabling interrupts first this time */
        tracing_max_latency = 0;
-       tr->ctrl = 1;
-       trace->ctrl_update(tr);
+       tracing_start();
        preempt_disable();
        local_irq_disable();
        udelay(100);
@@ -341,8 +345,7 @@ trace_selftest_startup_preemptirqsoff(struct tracer *trace, struct trace_array *
        local_irq_enable();
 
        /* stop the tracing. */
-       tr->ctrl = 0;
-       trace->ctrl_update(tr);
+       tracing_stop();
        /* check both trace buffers */
        ret = trace_test_buffer(tr, NULL);
        if (ret)
@@ -358,6 +361,7 @@ trace_selftest_startup_preemptirqsoff(struct tracer *trace, struct trace_array *
 
  out:
        trace->reset(tr);
+       tracing_start();
        tracing_max_latency = save_max;
 
        return ret;
@@ -448,8 +452,7 @@ trace_selftest_startup_wakeup(struct tracer *trace, struct trace_array *tr)
        msleep(100);
 
        /* stop the tracing. */
-       tr->ctrl = 0;
-       trace->ctrl_update(tr);
+       tracing_stop();
        /* check both trace buffers */
        ret = trace_test_buffer(tr, NULL);
        if (!ret)
@@ -457,6 +460,7 @@ trace_selftest_startup_wakeup(struct tracer *trace, struct trace_array *tr)
 
 
        trace->reset(tr);
+       tracing_start();
 
        tracing_max_latency = save_max;
 
@@ -485,11 +489,11 @@ trace_selftest_startup_sched_switch(struct tracer *trace, struct trace_array *tr
        /* Sleep for a 1/10 of a second */
        msleep(100);
        /* stop the tracing. */
-       tr->ctrl = 0;
-       trace->ctrl_update(tr);
+       tracing_stop();
        /* check the trace buffer */
        ret = trace_test_buffer(tr, &count);
        trace->reset(tr);
+       tracing_start();
 
        if (!ret && !count) {
                printk(KERN_CONT ".. no entries found ..");
@@ -513,11 +517,11 @@ trace_selftest_startup_sysprof(struct tracer *trace, struct trace_array *tr)
        /* Sleep for a 1/10 of a second */
        msleep(100);
        /* stop the tracing. */
-       tr->ctrl = 0;
-       trace->ctrl_update(tr);
+       tracing_stop();
        /* check the trace buffer */
        ret = trace_test_buffer(tr, &count);
        trace->reset(tr);
+       tracing_start();
 
        return ret;
 }
index 9587d3bcba556761de49854c95676a03a6dcecbf..8097430edff9bef42304c19a2596d3146380b183 100644 (file)
@@ -275,21 +275,11 @@ static void stack_trace_reset(struct trace_array *tr)
                stop_stack_trace(tr);
 }
 
-static void stack_trace_ctrl_update(struct trace_array *tr)
-{
-       /* When starting a new trace, reset the buffers */
-       if (tr->ctrl)
-               start_stack_trace(tr);
-       else
-               stop_stack_trace(tr);
-}
-
 static struct tracer stack_trace __read_mostly =
 {
        .name           = "sysprof",
        .init           = stack_trace_init,
        .reset          = stack_trace_reset,
-       .ctrl_update    = stack_trace_ctrl_update,
 #ifdef CONFIG_FTRACE_SELFTEST
        .selftest    = trace_selftest_startup_sysprof,
 #endif