From: Frederic Weisbecker <fweisbec@gmail.com>
To: Ingo Molnar <mingo@elte.hu>
Cc: Jason Baron <jbaron@redhat.com>,
linux-kernel@vger.kernel.org, laijs@cn.fujitsu.com,
rostedt@goodmis.org, peterz@infradead.org,
mathieu.desnoyers@polymtl.ca, jiayingz@google.com,
mbligh@google.com, lizf@cn.fujitsu.com
Subject: Re: [PATCH 08/12] add trace events for each syscall entry/exit
Date: Tue, 11 Aug 2009 14:01:36 +0200 [thread overview]
Message-ID: <20090811120135.GE4938@nowhere> (raw)
In-Reply-To: <20090811114512.GA585@elte.hu>
On Tue, Aug 11, 2009 at 01:45:12PM +0200, Ingo Molnar wrote:
>
> * Frederic Weisbecker <fweisbec@gmail.com> wrote:
>
> > > +struct trace_event event_syscall_enter = {
> > > + .trace = print_syscall_enter,
> > > + .type = TRACE_SYSCALL_ENTER
> > > +};
> > > +
> > > +struct trace_event event_syscall_exit = {
> > > + .trace = print_syscall_exit,
> > > + .type = TRACE_SYSCALL_EXIT
> > > +};
> > > --
> > > 1.6.2.5
> > >
> >
> > Nice.
> >
> > It's a bit too bad that enter and exit must be that separated
> > whereas their callbacks are pretty the same.
> >
> > But I guess if we want to nicely decouple both, we don't have the
> > choice.
>
> Yeah - and enter and exit are different, in terms of state.
>
> One thing that would be nice in the future (as an add-on - this
> patch-set looks useful already) is to allow the sampling of user
> register state as well via these tracepoints. That way we'd have a
> much faster (and completely transparent) implementation of strace in
> essence, with unique features such as system-wide or per cpu
> strace-ing.
>
> Ingo
Indeed, a missing piece is the syscall record sampling with registers.
Actually, IMO the registers themselves are not the right piece to export
to perfcounter. It's too low-level.
What we need are the fetched arguments, because a lot of them are adresses
(even user adresses), pretty useless for perf tools.
We can already and easily implement that simple args, like we do for ftrace.
That's pretty trivial.
next prev parent reply other threads:[~2009-08-11 12:01 UTC|newest]
Thread overview: 88+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-08-10 20:52 [PATCH 00/12] add syscall tracepoints V3 Jason Baron
2009-08-10 20:52 ` [PATCH 01/12] map syscall name to number Jason Baron
2009-08-10 20:52 ` [PATCH 02/12] call arch_init_ftrace_syscalls at boot Jason Baron
2009-08-10 20:52 ` [PATCH 03/12] add DECLARE_TRACE_WITH_CALLBACK() macro Jason Baron
2009-08-10 20:52 ` [PATCH 04/12] add syscall tracepoints Jason Baron
2009-08-10 20:52 ` [PATCH 05/12] update FTRACE_SYSCALL_MAX Jason Baron
2009-08-11 11:00 ` Frederic Weisbecker
2009-08-11 19:39 ` Matt Fleming
2009-08-24 13:41 ` Paul Mundt
2009-08-24 14:06 ` Jason Baron
2009-08-24 14:15 ` Paul Mundt
2009-08-24 14:34 ` Frederic Weisbecker
2009-08-24 14:37 ` Paul Mundt
2009-08-24 14:42 ` Jason Baron
2009-08-24 14:50 ` Paul Mundt
2009-08-24 18:34 ` Ingo Molnar
2009-08-10 20:52 ` [PATCH 06/12] trace_event - raw_init bailout Jason Baron
2009-08-10 20:52 ` [PATCH 07/12] add ftrace_event_call void * 'data' field Jason Baron
2009-08-11 10:09 ` Frederic Weisbecker
2009-08-17 22:19 ` Steven Rostedt
2009-08-17 23:09 ` Frederic Weisbecker
2009-08-18 0:06 ` Steven Rostedt
2009-08-10 20:52 ` [PATCH 08/12] add trace events for each syscall entry/exit Jason Baron
2009-08-11 10:50 ` Frederic Weisbecker
2009-08-11 11:45 ` Ingo Molnar
2009-08-11 12:01 ` Frederic Weisbecker [this message]
2009-08-25 12:50 ` Hendrik Brueckner
2009-08-25 14:15 ` Frederic Weisbecker
2009-08-25 16:02 ` Hendrik Brueckner
2009-08-25 16:20 ` Mathieu Desnoyers
2009-08-25 16:59 ` Frederic Weisbecker
2009-08-25 17:31 ` Frederic Weisbecker
2009-08-25 18:31 ` Mathieu Desnoyers
2009-08-25 19:42 ` Frederic Weisbecker
2009-08-25 19:51 ` Mathieu Desnoyers
2009-08-26 0:19 ` Frederic Weisbecker
2009-08-26 0:42 ` Mathieu Desnoyers
2009-08-26 7:28 ` Ingo Molnar
2009-08-26 17:11 ` Mathieu Desnoyers
2009-08-26 6:48 ` Peter Zijlstra
2009-08-25 22:04 ` Martin Schwidefsky
2009-08-26 7:38 ` Heiko Carstens
2009-08-26 12:32 ` Frederic Weisbecker
2009-08-26 6:21 ` Peter Zijlstra
2009-08-26 17:08 ` Mathieu Desnoyers
2009-08-26 18:41 ` Christoph Hellwig
2009-08-26 18:42 ` Christoph Hellwig
2009-08-26 19:01 ` Mathieu Desnoyers
2009-08-26 7:10 ` Peter Zijlstra
2009-08-26 17:10 ` Mathieu Desnoyers
2009-08-26 17:24 ` H. Peter Anvin
2009-08-25 17:04 ` Jason Baron
2009-08-25 18:15 ` Mathieu Desnoyers
2009-08-26 12:35 ` Frederic Weisbecker
2009-08-26 12:59 ` Heiko Carstens
2009-08-26 13:30 ` Frederic Weisbecker
2009-08-26 13:48 ` Steven Rostedt
2009-08-26 13:53 ` Frederic Weisbecker
2009-08-26 14:44 ` Steven Rostedt
2009-08-26 13:56 ` Peter Zijlstra
2009-08-26 14:41 ` Steven Rostedt
2009-08-26 14:10 ` Heiko Carstens
2009-08-26 14:27 ` Frederic Weisbecker
2009-08-26 14:43 ` Steven Rostedt
2009-08-26 16:14 ` Frederic Weisbecker
2009-08-26 14:43 ` Steven Rostedt
2009-08-26 14:41 ` Hendrik Brueckner
2009-08-28 12:28 ` [tip:tracing/core] tracing: Don't trace kernel thread syscalls tip-bot for Hendrik Brueckner
2009-08-25 21:40 ` [PATCH 08/12] add trace events for each syscall entry/exit Frederic Weisbecker
2009-08-25 22:09 ` Frederic Weisbecker
2009-08-26 7:47 ` Heiko Carstens
2009-08-28 12:27 ` [tip:tracing/core] tracing: Check invalid syscall nr while tracing syscalls tip-bot for Hendrik Brueckner
2009-08-10 20:52 ` [PATCH 09/12] add support traceopint ids Jason Baron
2009-08-11 11:28 ` Frederic Weisbecker
2009-08-10 20:53 ` [PATCH 10/12] add perf counter support Jason Baron
2009-08-11 12:12 ` Frederic Weisbecker
2009-08-11 12:17 ` Ingo Molnar
2009-08-11 12:25 ` Frederic Weisbecker
2009-08-10 20:53 ` [PATCH 11/12] add more namespace area to 'perf list' output Jason Baron
2009-08-10 20:53 ` [PATCH 12/12] convert x86_64 mmap and uname to use DEFINE_SYSCALL Jason Baron
2009-08-25 12:31 ` [PATCH 00/12] add syscall tracepoints V3 - s390 arch update Hendrik Brueckner
2009-08-25 13:52 ` Frederic Weisbecker
2009-08-25 14:39 ` Heiko Carstens
2009-08-25 19:52 ` Frederic Weisbecker
2009-08-25 15:38 ` Hendrik Brueckner
2009-08-26 16:53 ` Frederic Weisbecker
2009-08-27 7:27 ` [PATCH]: tracing: s390 arch updates for tracing syscalls Hendrik Brueckner
2009-08-28 12:27 ` [tip:tracing/core] tracing: Add syscall tracepoints - s390 arch update tip-bot for Hendrik Brueckner
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20090811120135.GE4938@nowhere \
--to=fweisbec@gmail.com \
--cc=jbaron@redhat.com \
--cc=jiayingz@google.com \
--cc=laijs@cn.fujitsu.com \
--cc=linux-kernel@vger.kernel.org \
--cc=lizf@cn.fujitsu.com \
--cc=mathieu.desnoyers@polymtl.ca \
--cc=mbligh@google.com \
--cc=mingo@elte.hu \
--cc=peterz@infradead.org \
--cc=rostedt@goodmis.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox