All of lore.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.