diff options
author | Peter Zijlstra <peterz@infradead.org> | 2008-12-10 08:08:22 +0100 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-12-12 12:08:26 +0100 |
commit | cbc34ed1ac36690f75fd272e19e7b4fc29aae5a2 (patch) | |
tree | be0c1e0d4ed4eab1c9385198372dc64de50c9f1b | |
parent | f3134de60624829a57741c1f3796847d4de165f6 (diff) | |
download | op-kernel-dev-cbc34ed1ac36690f75fd272e19e7b4fc29aae5a2.zip op-kernel-dev-cbc34ed1ac36690f75fd272e19e7b4fc29aae5a2.tar.gz |
sched: fix tracepoints in scheduler
The trace point only caught one of many places where a task changes cpu,
put it in the right place to we get all of them.
Change the signature while we're at it.
Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
-rw-r--r-- | include/trace/sched.h | 4 | ||||
-rw-r--r-- | kernel/sched.c | 3 |
2 files changed, 4 insertions, 3 deletions
diff --git a/include/trace/sched.h b/include/trace/sched.h index 9b2854a..f4549d5 100644 --- a/include/trace/sched.h +++ b/include/trace/sched.h @@ -30,8 +30,8 @@ DECLARE_TRACE(sched_switch, TPARGS(rq, prev, next)); DECLARE_TRACE(sched_migrate_task, - TPPROTO(struct rq *rq, struct task_struct *p, int dest_cpu), - TPARGS(rq, p, dest_cpu)); + TPPROTO(struct task_struct *p, int orig_cpu, int dest_cpu), + TPARGS(p, orig_cpu, dest_cpu)); DECLARE_TRACE(sched_process_free, TPPROTO(struct task_struct *p), diff --git a/kernel/sched.c b/kernel/sched.c index 7729c4b..d377097 100644 --- a/kernel/sched.c +++ b/kernel/sched.c @@ -1851,6 +1851,8 @@ void set_task_cpu(struct task_struct *p, unsigned int new_cpu) clock_offset = old_rq->clock - new_rq->clock; + trace_sched_migrate_task(p, task_cpu(p), new_cpu); + #ifdef CONFIG_SCHEDSTATS if (p->se.wait_start) p->se.wait_start -= clock_offset; @@ -2868,7 +2870,6 @@ static void sched_migrate_task(struct task_struct *p, int dest_cpu) || unlikely(!cpu_active(dest_cpu))) goto out; - trace_sched_migrate_task(rq, p, dest_cpu); /* force the process onto the specified CPU */ if (migrate_task(p, dest_cpu, &req)) { /* Need to wait for migration thread (might exit: take ref). */ |