diff options
| author | Paul E. McKenney <paulmck@linux.vnet.ibm.com> | 2013-08-17 21:08:37 -0400 |
|---|---|---|
| committer | Paul E. McKenney <paulmck@linux.vnet.ibm.com> | 2013-09-23 12:15:31 -0400 |
| commit | 0d75292467b0c8554d70c751a35af6514202ac28 (patch) | |
| tree | ebac548cbfac7ed5ee2ac68c08208d6a1d50fd38 /kernel/rcutiny.c | |
| parent | 26cdfedf6a902345f8604ea8e0b7dd2566b37a46 (diff) | |
rcu: Have rcutiny tracepoints use tracepoint_string()
This commit extends the work done in f7f7bac9 (rcu: Have the RCU
tracepoints use the tracepoint_string infrastructure) to cover rcutiny.
Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Cc: Steven Rostedt <rostedt@goodmis.org>
Diffstat (limited to 'kernel/rcutiny.c')
| -rw-r--r-- | kernel/rcutiny.c | 17 |
1 files changed, 10 insertions, 7 deletions
diff --git a/kernel/rcutiny.c b/kernel/rcutiny.c index 9ed6075dc562..e99eb5fb10af 100644 --- a/kernel/rcutiny.c +++ b/kernel/rcutiny.c | |||
| @@ -35,6 +35,7 @@ | |||
| 35 | #include <linux/time.h> | 35 | #include <linux/time.h> |
| 36 | #include <linux/cpu.h> | 36 | #include <linux/cpu.h> |
| 37 | #include <linux/prefetch.h> | 37 | #include <linux/prefetch.h> |
| 38 | #include <linux/ftrace_event.h> | ||
| 38 | 39 | ||
| 39 | #ifdef CONFIG_RCU_TRACE | 40 | #ifdef CONFIG_RCU_TRACE |
| 40 | #include <trace/events/rcu.h> | 41 | #include <trace/events/rcu.h> |
| @@ -58,16 +59,17 @@ static long long rcu_dynticks_nesting = DYNTICK_TASK_EXIT_IDLE; | |||
| 58 | static void rcu_idle_enter_common(long long newval) | 59 | static void rcu_idle_enter_common(long long newval) |
| 59 | { | 60 | { |
| 60 | if (newval) { | 61 | if (newval) { |
| 61 | RCU_TRACE(trace_rcu_dyntick("--=", | 62 | RCU_TRACE(trace_rcu_dyntick(TPS("--="), |
| 62 | rcu_dynticks_nesting, newval)); | 63 | rcu_dynticks_nesting, newval)); |
| 63 | rcu_dynticks_nesting = newval; | 64 | rcu_dynticks_nesting = newval; |
| 64 | return; | 65 | return; |
| 65 | } | 66 | } |
| 66 | RCU_TRACE(trace_rcu_dyntick("Start", rcu_dynticks_nesting, newval)); | 67 | RCU_TRACE(trace_rcu_dyntick(TPS("Start"), |
| 68 | rcu_dynticks_nesting, newval)); | ||
| 67 | if (!is_idle_task(current)) { | 69 | if (!is_idle_task(current)) { |
| 68 | struct task_struct *idle = idle_task(smp_processor_id()); | 70 | struct task_struct *idle = idle_task(smp_processor_id()); |
| 69 | 71 | ||
| 70 | RCU_TRACE(trace_rcu_dyntick("Error on entry: not idle task", | 72 | RCU_TRACE(trace_rcu_dyntick(TPS("Entry error: not idle task"), |
| 71 | rcu_dynticks_nesting, newval)); | 73 | rcu_dynticks_nesting, newval)); |
| 72 | ftrace_dump(DUMP_ALL); | 74 | ftrace_dump(DUMP_ALL); |
| 73 | WARN_ONCE(1, "Current pid: %d comm: %s / Idle pid: %d comm: %s", | 75 | WARN_ONCE(1, "Current pid: %d comm: %s / Idle pid: %d comm: %s", |
| @@ -120,15 +122,15 @@ EXPORT_SYMBOL_GPL(rcu_irq_exit); | |||
| 120 | static void rcu_idle_exit_common(long long oldval) | 122 | static void rcu_idle_exit_common(long long oldval) |
| 121 | { | 123 | { |
| 122 | if (oldval) { | 124 | if (oldval) { |
| 123 | RCU_TRACE(trace_rcu_dyntick("++=", | 125 | RCU_TRACE(trace_rcu_dyntick(TPS("++="), |
| 124 | oldval, rcu_dynticks_nesting)); | 126 | oldval, rcu_dynticks_nesting)); |
| 125 | return; | 127 | return; |
| 126 | } | 128 | } |
| 127 | RCU_TRACE(trace_rcu_dyntick("End", oldval, rcu_dynticks_nesting)); | 129 | RCU_TRACE(trace_rcu_dyntick(TPS("End"), oldval, rcu_dynticks_nesting)); |
| 128 | if (!is_idle_task(current)) { | 130 | if (!is_idle_task(current)) { |
| 129 | struct task_struct *idle = idle_task(smp_processor_id()); | 131 | struct task_struct *idle = idle_task(smp_processor_id()); |
| 130 | 132 | ||
| 131 | RCU_TRACE(trace_rcu_dyntick("Error on exit: not idle task", | 133 | RCU_TRACE(trace_rcu_dyntick(TPS("Exit error: not idle task"), |
| 132 | oldval, rcu_dynticks_nesting)); | 134 | oldval, rcu_dynticks_nesting)); |
| 133 | ftrace_dump(DUMP_ALL); | 135 | ftrace_dump(DUMP_ALL); |
| 134 | WARN_ONCE(1, "Current pid: %d comm: %s / Idle pid: %d comm: %s", | 136 | WARN_ONCE(1, "Current pid: %d comm: %s / Idle pid: %d comm: %s", |
| @@ -304,7 +306,8 @@ static void __rcu_process_callbacks(struct rcu_ctrlblk *rcp) | |||
| 304 | RCU_TRACE(cb_count++); | 306 | RCU_TRACE(cb_count++); |
| 305 | } | 307 | } |
| 306 | RCU_TRACE(rcu_trace_sub_qlen(rcp, cb_count)); | 308 | RCU_TRACE(rcu_trace_sub_qlen(rcp, cb_count)); |
| 307 | RCU_TRACE(trace_rcu_batch_end(rcp->name, cb_count, 0, need_resched(), | 309 | RCU_TRACE(trace_rcu_batch_end(rcp->name, |
| 310 | cb_count, 0, need_resched(), | ||
| 308 | is_idle_task(current), | 311 | is_idle_task(current), |
| 309 | false)); | 312 | false)); |
| 310 | } | 313 | } |
