This is the mail archive of the
systemtap@sourceware.org
mailing list for the systemtap project.
Re: [PATCH] tracing/ftrace: add missing wake-up on some callsites
- From: Masami Hiramatsu <mhiramat at redhat dot com>
- To: Steven Rostedt <rostedt at goodmis dot org>
- Cc: Ingo Molnar <mingo at elte dot hu>, Peter Zijlstra <a dot p dot zijlstra at chello dot nl>, Frederic Weisbecker <fweisbec at gmail dot com>, LKML <linux-kernel at vger dot kernel dot org>, Arnaldo Carvalho de Melo <acme at redhat dot com>, systemtap-ml <systemtap at sources dot redhat dot com>
- Date: Fri, 27 Feb 2009 12:04:05 -0500
- Subject: Re: [PATCH] tracing/ftrace: add missing wake-up on some callsites
- References: <49a1cc8f.2283420a.54d2.ffff8461@mx.google.com> <alpine.DEB.2.00.0902231034570.18221@gandalf.stny.rr.com> <alpine.DEB.2.00.0902231039290.18221@gandalf.stny.rr.com> <20090223162630.GG5961@nowhere> <alpine.DEB.2.00.0902231151020.18221@gandalf.stny.rr.com> <20090223170528.GH5961@nowhere> <alpine.DEB.2.00.0902231211230.18221@gandalf.stny.rr.com> <20090223173714.GA601@elte.hu> <alpine.DEB.2.00.0902231303000.18221@gandalf.stny.rr.com>
Steven Rostedt wrote:
> On Mon, 23 Feb 2009, Ingo Molnar wrote:
>
>> * Steven Rostedt <rostedt@goodmis.org> wrote:
>>
>>>> Which would send a delayed work to wake up?
>>> No, I was thinking that trace_delay_wake_up() would be called
>>> by these dangerous call sites. Then a per_cpu flag could be
>>> set. We could have a trace point in the scheduler code that is
>>> outside holding a runqueue lock, and this trace point would
>>> call a trace function that will clear the per cpu flag, and
>>> then call trace_wake_up().
>> No, that's very roundabout and ugly. If we putting a tracepoint
>> there we might as well put real scheduler code there that looks
>> for such a flag. But i'm not convinced we need a flag ...
>
> Just a suggestion. I was trying to keep the tracer from being an overhead.
> But what else would you suggest? Just having the scheduler call
> trace_wakeup?
Actually, Systemtap(LTTng too?) also has same problem. Currently,
we're using a periodical timer to wake the reader process up.
I assume if we can put a tracepoint at the beginning of schedule(),
we can share it.
Thank you,
>
> -- Steve
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
--
Masami Hiramatsu
Software Engineer
Hitachi Computer Products (America) Inc.
Software Solutions Division
e-mail: mhiramat@redhat.com