[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20190116160506.0d56e027@gandalf.local.home>
Date: Wed, 16 Jan 2019 16:05:06 -0500
From: Steven Rostedt <rostedt@...dmis.org>
To: Changbin Du <changbin.du@...il.com>
Cc: mingo@...hat.com, corbet@....net, linux-doc@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH v2] sched/tracing: Show stacktrace for wakeup tracers
On Thu, 17 Jan 2019 00:02:49 +0800
Changbin Du <changbin.du@...il.com> wrote:
> This align the behavior of wakeup tracers with irqsoff latency tracer
> that we record stacktrace at the beginning and end of waking up. The
> stacktrace shows us what is happening in the kernel.
>
> Signed-off-by: Changbin Du <changbin.du@...il.com>
I've applied your patch, but it may be a while before you see it in
linux-next. I'll be traveling for a bit and wont be able to do the full
tests which I do before pushing to my linux-next branch.
You may see them soon in my ftrace/core branch on kernel.org.
-- Steve
> ---
> kernel/trace/trace_sched_wakeup.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/kernel/trace/trace_sched_wakeup.c b/kernel/trace/trace_sched_wakeup.c
> index da5b6e012840..f4fe7d1781e9 100644
> --- a/kernel/trace/trace_sched_wakeup.c
> +++ b/kernel/trace/trace_sched_wakeup.c
> @@ -475,6 +475,7 @@ probe_wakeup_sched_switch(void *ignore, bool preempt,
>
> __trace_function(wakeup_trace, CALLER_ADDR0, CALLER_ADDR1, flags, pc);
> tracing_sched_switch_trace(wakeup_trace, prev, next, flags, pc);
> + __trace_stack(wakeup_trace, flags, 0, pc);
>
> T0 = data->preempt_timestamp;
> T1 = ftrace_now(cpu);
> @@ -586,6 +587,7 @@ probe_wakeup(void *ignore, struct task_struct *p)
> data = per_cpu_ptr(wakeup_trace->trace_buffer.data, wakeup_cpu);
> data->preempt_timestamp = ftrace_now(cpu);
> tracing_sched_wakeup_trace(wakeup_trace, p, current, flags, pc);
> + __trace_stack(wakeup_trace, flags, 0, pc);
>
> /*
> * We must be careful in using CALLER_ADDR2. But since wake_up
Powered by blists - more mailing lists