Commit 468a15bb authored by Peter Zijlstra's avatar Peter Zijlstra Committed by Ingo Molnar

sched, trace: update trace_sched_wakeup()

Impact: extend the wakeup tracepoint with the info whether the wakeup was real

Add the information needed to distinguish 'real' wakeups from 'false'
wakeups.
Signed-off-by: default avatarPeter Zijlstra <peterz@infradead.org>
Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
parent 0ca59dd9
...@@ -17,8 +17,8 @@ DECLARE_TRACE(sched_wait_task, ...@@ -17,8 +17,8 @@ DECLARE_TRACE(sched_wait_task,
TPARGS(rq, p)); TPARGS(rq, p));
DECLARE_TRACE(sched_wakeup, DECLARE_TRACE(sched_wakeup,
TPPROTO(struct rq *rq, struct task_struct *p), TPPROTO(struct rq *rq, struct task_struct *p, int success),
TPARGS(rq, p)); TPARGS(rq, p, success));
DECLARE_TRACE(sched_wakeup_new, DECLARE_TRACE(sched_wakeup_new,
TPPROTO(struct rq *rq, struct task_struct *p, int success), TPPROTO(struct rq *rq, struct task_struct *p, int success),
......
...@@ -2324,7 +2324,7 @@ static int try_to_wake_up(struct task_struct *p, unsigned int state, int sync) ...@@ -2324,7 +2324,7 @@ static int try_to_wake_up(struct task_struct *p, unsigned int state, int sync)
success = 1; success = 1;
out_running: out_running:
trace_sched_wakeup(rq, p); trace_sched_wakeup(rq, p, success);
check_preempt_curr(rq, p, sync); check_preempt_curr(rq, p, sync);
p->state = TASK_RUNNING; p->state = TASK_RUNNING;
......
...@@ -49,7 +49,7 @@ probe_sched_switch(struct rq *__rq, struct task_struct *prev, ...@@ -49,7 +49,7 @@ probe_sched_switch(struct rq *__rq, struct task_struct *prev,
} }
static void static void
probe_sched_wakeup(struct rq *__rq, struct task_struct *wakee) probe_sched_wakeup(struct rq *__rq, struct task_struct *wakee, int success)
{ {
struct trace_array_cpu *data; struct trace_array_cpu *data;
unsigned long flags; unsigned long flags;
......
...@@ -211,7 +211,7 @@ static void wakeup_reset(struct trace_array *tr) ...@@ -211,7 +211,7 @@ static void wakeup_reset(struct trace_array *tr)
} }
static void static void
probe_wakeup(struct rq *rq, struct task_struct *p) probe_wakeup(struct rq *rq, struct task_struct *p, int success)
{ {
int cpu = smp_processor_id(); int cpu = smp_processor_id();
unsigned long flags; unsigned long flags;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment