diff options
author | Steven Rostedt <srostedt@redhat.com> | 2009-01-21 17:17:04 -0500 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2009-01-22 04:27:39 -0500 |
commit | f8ec1062f589cdb1cffcffab1376124a1bc08500 (patch) | |
tree | c27f47b2ceaf977b13c13c008f64acc02e52abdf /kernel/trace | |
parent | 3244351c31211a8b1ba8b4b34c3de04d5dfa03e4 (diff) |
wakeup-tracer: show scheduling data in output
Impact: better data for wakeup tracer
This patch adds the wakeup and schedule calls that are used by
the scheduler tracer to make the wakeup tracer more readable.
Signed-off-by: Steven Rostedt <srostedt@redhat.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'kernel/trace')
-rw-r--r-- | kernel/trace/trace_sched_wakeup.c | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/kernel/trace/trace_sched_wakeup.c b/kernel/trace/trace_sched_wakeup.c index f48957886102..93cecda650b2 100644 --- a/kernel/trace/trace_sched_wakeup.c +++ b/kernel/trace/trace_sched_wakeup.c | |||
@@ -153,6 +153,7 @@ probe_wakeup_sched_switch(struct rq *rq, struct task_struct *prev, | |||
153 | goto out_unlock; | 153 | goto out_unlock; |
154 | 154 | ||
155 | trace_function(wakeup_trace, data, CALLER_ADDR1, CALLER_ADDR2, flags, pc); | 155 | trace_function(wakeup_trace, data, CALLER_ADDR1, CALLER_ADDR2, flags, pc); |
156 | tracing_sched_switch_trace(wakeup_trace, data, prev, next, flags, pc); | ||
156 | 157 | ||
157 | /* | 158 | /* |
158 | * usecs conversion is slow so we try to delay the conversion | 159 | * usecs conversion is slow so we try to delay the conversion |
@@ -214,6 +215,7 @@ static void wakeup_reset(struct trace_array *tr) | |||
214 | static void | 215 | static void |
215 | probe_wakeup(struct rq *rq, struct task_struct *p, int success) | 216 | probe_wakeup(struct rq *rq, struct task_struct *p, int success) |
216 | { | 217 | { |
218 | struct trace_array_cpu *data; | ||
217 | int cpu = smp_processor_id(); | 219 | int cpu = smp_processor_id(); |
218 | unsigned long flags; | 220 | unsigned long flags; |
219 | long disabled; | 221 | long disabled; |
@@ -253,9 +255,12 @@ probe_wakeup(struct rq *rq, struct task_struct *p, int success) | |||
253 | 255 | ||
254 | local_save_flags(flags); | 256 | local_save_flags(flags); |
255 | 257 | ||
256 | wakeup_trace->data[wakeup_cpu]->preempt_timestamp = ftrace_now(cpu); | 258 | data = wakeup_trace->data[wakeup_cpu]; |
257 | trace_function(wakeup_trace, wakeup_trace->data[wakeup_cpu], | 259 | data->preempt_timestamp = ftrace_now(cpu); |
258 | CALLER_ADDR1, CALLER_ADDR2, flags, pc); | 260 | tracing_sched_wakeup_trace(wakeup_trace, data, p, current, |
261 | flags, pc); | ||
262 | trace_function(wakeup_trace, data, CALLER_ADDR1, CALLER_ADDR2, | ||
263 | flags, pc); | ||
259 | 264 | ||
260 | out_locked: | 265 | out_locked: |
261 | __raw_spin_unlock(&wakeup_lock); | 266 | __raw_spin_unlock(&wakeup_lock); |