public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Ingo Molnar <mingo@elte.hu>
To: "Frédéric Weisbecker" <fweisbec@gmail.com>
Cc: "Kok, Auke" <auke-jan.h.kok@intel.com>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
	powertop ml <power@bughost.org>,
	Arjan van de Ven <arjan@linux.intel.com>,
	srostedt@redhat.com,
	Arnaldo Carvalho de Melo <acme@ghostprotocols.net>,
	"Frank Ch. Eigler" <fche@redhat.com>,
	Neil Horman <nhorman@tuxdriver.com>,
	Ananth N Mavinakayanahalli <ananth@in.ibm.com>,
	utrace-devel@redhat.com, Roland McGrath <roland@redhat.com>
Subject: Re: [PATCH] tracer for sys_open() - sreadahead
Date: Thu, 29 Jan 2009 15:31:20 +0100	[thread overview]
Message-ID: <20090129143120.GS24391@elte.hu> (raw)
In-Reply-To: <c62985530901290629i168ac12cjc4b22140caceff58@mail.gmail.com>


* Frédéric Weisbecker <fweisbec@gmail.com> wrote:

> 2009/1/29 Ingo Molnar <mingo@elte.hu>:
> >
> > * Frederic Weisbecker <fweisbec@gmail.com> wrote:
> >
> >> On Tue, Jan 27, 2009 at 11:43:03PM +0100, Frederic Weisbecker wrote:
> >> > On Tue, Jan 27, 2009 at 12:08:04PM -0800, Kok, Auke wrote:
> >> > >
> >> > > This tracer monitors regular file open() syscalls. This is a fast
> >> > > and low-overhead alternative to strace, and does not allow or
> >> > > require to be attached to every process.
> >> > >
> >> > > The tracer only logs succesfull calls, as those are the only ones we
> >> > > are currently interested in, and we can determine the absolute path
> >> > > of these files as we log.
> >> > >
> >> > > Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
> >> >
> >> >
> >> > Hi Auke,
> >> >
> >> > Speaking about a global syscall tracer, I made a patch to trace only the syscalls
> >> > with the function-graph-tracer.
> >> >
> >> > http://lkml.org/lkml/2008/12/30/267
> >> >
> >> > Its approach and purpose is different than a tracer dedicated only to syscalls.
> >> > The function graph tracer traces execution graph of the functions and is more about
> >> > execution time spent and code flow whereas a syscall tracer can provide more specific
> >> > informations about syscalls.
> >> >
> >> > So both are not overlaping.
> >> >
> >> > But the low level part of my patch creates a thread flag _TIF_SYSCALL_TRACE which triggers
> >>
> >> s/_TIF_SYSCALL_TRACE/_TIF_SYSCALL_FTRACE
> >
> >> > Once we have it, I think a syscall tracer can be fed with new syscalls
> >> > events through several patch iterations, starting with the open and
> >> > close one :-)
> >> >
> >> > Are you ok with that?
> >> >
> >> > Steven, Ingo, do you agree?
> >
> > yes. We definitely need this on the asm syscall level, to not contaminate
> > hundreds of syscalls with tracepoints.
> >
> > Auke's sys_open() plugin would be a nice prototype for that concept - but
> > in generally it would be useful to be able to augment kernel tracer output
> > with all syscall events that occur.
> >
> > The output would be something like a slimmed-down strace, but for the
> > whole kernel and not tied to ptrace semantics (which are crippling).
> >
> > Would you be interested in extending your syscall tracing concept with
> > those bits and would you be interested in integrating Auke's plugin into
> > that
> >
> >        Ingo
> 
> 
> Several people talked me about utrace and gave some examples about it in 
> this discussion. The Api is very convenient to fetch syscall numbers, 
> arguments and return values. And the hooks are done in the generic core 
> code, so it is arch independent.
> 
> The only drawback I can see is that it is not yet merged upstream, in 
> need of in-kernel users. If it only depends on this condition, we could 
> be these users...
> 
> What do you think?

sure - how do the minimal bits/callbacks look like which enable syscall 
tracing?

	Ingo

  reply	other threads:[~2009-01-29 14:31 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-01-27 20:08 [PATCH] tracer for sys_open() - sreadahead Kok, Auke
2009-01-27 20:51 ` Arnaldo Carvalho de Melo
2009-01-27 21:14   ` Frederic Weisbecker
2009-01-28 22:05     ` Kok, Auke
2009-01-29  0:45       ` Arnaldo Carvalho de Melo
2009-01-29 13:39         ` Frédéric Weisbecker
2009-01-29 13:40           ` Frédéric Weisbecker
2009-01-27 22:43 ` Frederic Weisbecker
2009-01-27 22:50   ` Frederic Weisbecker
2009-01-29 14:04     ` Ingo Molnar
2009-01-29 14:29       ` Frédéric Weisbecker
2009-01-29 14:31         ` Ingo Molnar [this message]
2009-01-29 14:40           ` Frédéric Weisbecker
2009-01-29 14:48             ` Frédéric Weisbecker
2009-01-29 15:09             ` Ingo Molnar
2009-01-29 15:17               ` Frédéric Weisbecker
2009-01-29 15:34               ` Frédéric Weisbecker
2009-01-29 15:53                 ` Frank Ch. Eigler
2009-01-28  0:43   ` Frank Ch. Eigler
2009-01-28 13:58     ` Frédéric Weisbecker
2009-01-28 14:29       ` Arnaldo Carvalho de Melo
2009-01-28  9:38   ` Ananth N Mavinakayanahalli
2009-01-28 14:21     ` Frédéric Weisbecker
2009-01-28 17:00       ` Ananth N Mavinakayanahalli
2009-01-28 17:15         ` Frédéric Weisbecker
2009-01-28 22:19   ` Kok, Auke
2009-01-30 20:22 ` Pavel Machek
2009-02-03 13:32   ` Ingo Molnar
2009-02-05 14:44     ` Harald Hoyer
2009-02-05 15:07       ` Bill Nottingham
2009-02-05 15:14         ` Arjan van de Ven
2009-02-05 15:24           ` Bill Nottingham
2009-02-05 15:47             ` Arjan van de Ven
2009-02-06 23:18               ` Corrado Zoccolo
2009-02-09 13:13       ` Karel Zak
2009-02-09 13:23         ` Harald Hoyer
2009-02-09 13:54           ` Karel Zak
2009-02-11 10:44             ` Harald Hoyer

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=20090129143120.GS24391@elte.hu \
    --to=mingo@elte.hu \
    --cc=acme@ghostprotocols.net \
    --cc=ananth@in.ibm.com \
    --cc=arjan@linux.intel.com \
    --cc=auke-jan.h.kok@intel.com \
    --cc=fche@redhat.com \
    --cc=fweisbec@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=nhorman@tuxdriver.com \
    --cc=power@bughost.org \
    --cc=roland@redhat.com \
    --cc=srostedt@redhat.com \
    --cc=utrace-devel@redhat.com \
    /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