From: Mark Wielaard <mjw@redhat.com>
To: Steven Rostedt <rostedt@goodmis.org>
Cc: Ben Gamari <bgamari.foss@gmail.com>,
linux-kernel@vger.kernel.org, "Stone,
Joshua I" <joshua.i.stone@intel.com>,
Rober Richter <robert.richter@amd.com>,
anil.s.keshavamurthy@intel.com, ananth@in.ibm.com,
davem@davemloft.net, mhiramat@redhat.com,
SystemTap <systemtap@sources.redhat.com>,
Eric Anholt <eric@anholt.net>,
Chris Wilson <chris@chris-wilson.co.uk>,
intel-gfx@lists.freedesktop.org
Subject: Re: Infrastructure for tracking driver performance events
Date: Thu, 25 Jun 2009 15:24:39 +0200 [thread overview]
Message-ID: <1245936279.2677.11.camel@hermans.wildebeest.org> (raw)
In-Reply-To: <alpine.DEB.2.00.0906241549170.15398@gandalf.stny.rr.com>
Hi,
On Thu, 2009-06-25 at 08:55 -0400, Steven Rostedt wrote:
> On Wed, 24 Jun 2009, Ben Gamari wrote:
> > 3) A large amount of usermode support is necessary (which will likely be
> > the case for any option; listed here for completeness)
> >
> > Another option seems to be systemtap. It has already been documented[3]
> > that this option could provide both user-mode and kernel-mode
> > backtraces. The driver could provide a kernel marker at every potential
> > wait point (or a single marker in a function called at each wait point,
> > for that matter) which would be picked up by systemtap and processed in
> > usermode, calling ptrace to acquire a usermode backtrace. This approach
> > seems slightly cleaner as it doesn't require the tracing on the entire
> > machine to catch what should be reasonably rare events (hopefully).
>
> Enabling the userstacktrace will give userspace stack traces at event
> trace points. The thing is that the userspace utility must be built with
> frame pointers.
This isn't true for Systemtap. It can unwind through anything since it
contains a dwarf-unwinder that can do backtraces as long as unwind
tables are available for the modules (executables, vdso, shared
libraries, etc.) one wants to unwind through. Systemtap currently gets
these in its "translation" phase and you do need to list them explicitly
atm. There is work underway to make this more flexible and automatic.
Also cross kernel-user-space backtraces need some work (systemtap can
use the dwarf unwinder also in-kernel, but some kernel parts are missing
unwind tables).
Some systemtap bugs to track if you are interested in extending this
functionality:
= Prerequirements for more ubiquitous backtracing
sw#6961 backtrace from non-pt_regs probe context
http://sourceware.org/bugzilla/show_bug.cgi?id=6961
sw#10080 track vdso for process symbols/backtrace
http://sourceware.org/bugzilla/show_bug.cgi?id=10080
sw#10208 Support probing glibc synthesized syscall wrappers
http://sourceware.org/bugzilla/show_bug.cgi?id=10208
NOTE: the above still won't make cross kernel-to-userspace backtracing
fully work since we cannot easily unwind through the kernel-entry/exit
assembly code that doesn't have dwarf unwind tables.
= Make user backtraces more convenient
sw#10228 Add more vma-tracking for user space symbol/backtraces
http://sourceware.org/bugzilla/show_bug.cgi?id=10228
sw#6580 revamp backtrace-related tapset functions
http://sourceware.org/bugzilla/show_bug.cgi?id=6580
Cheers,
Mark
next prev parent reply other threads:[~2009-06-25 13:25 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-06-24 17:29 Ben Gamari
2009-06-24 18:53 ` Josh Stone
2009-06-25 12:55 ` Steven Rostedt
2009-06-25 13:24 ` Mark Wielaard [this message]
2009-07-03 16:30 ` Ben Gamari
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=1245936279.2677.11.camel@hermans.wildebeest.org \
--to=mjw@redhat.com \
--cc=ananth@in.ibm.com \
--cc=anil.s.keshavamurthy@intel.com \
--cc=bgamari.foss@gmail.com \
--cc=chris@chris-wilson.co.uk \
--cc=davem@davemloft.net \
--cc=eric@anholt.net \
--cc=intel-gfx@lists.freedesktop.org \
--cc=joshua.i.stone@intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mhiramat@redhat.com \
--cc=robert.richter@amd.com \
--cc=rostedt@goodmis.org \
--cc=systemtap@sources.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
all inboxes | Powered by JetHome®