From: Masami Hiramatsu <mhiramat@redhat.com>
To: Ingo Molnar <mingo@elte.hu>, lkml <linux-kernel@vger.kernel.org>
Cc: Paul Mackerras <paulus@samba.org>,
Arnaldo Carvalho de Melo <acme@redhat.com>,
Peter Zijlstra <peterz@infradead.org>,
Mike Galbraith <efault@gmx.de>,
Frederic Weisbecker <fweisbec@gmail.com>,
systemtap <systemtap@sources.redhat.com>,
DLE <dle-develop@lists.sourceforge.net>
Subject: [PATCH -tip v2 0/8] perf-probe updates - data-structure support improvements, etc.
Date: Tue, 06 Apr 2010 18:05:42 -0400 [thread overview]
Message-ID: <20100406220542.13329.45837.stgit@localhost6.localdomain6> (raw)
Hi Ingo,
Here are several updates of perf-probe. This series improves
data structure accessing. In this version, I added 'removing die()'
patches.
- Set the name of argument which traces a data structure member
as the last member of the data structure reference (e.g. f_mode
of file->f_mode). This allows us to use perf-trace for tracin
data-structure members.
- Add the basic type support. This allows us to fetch the memory
with specified bitwidth. Usually, data-structure members are
packed on the memory, this means if we want to read a member
from memory, we have to access it with type casting.
kprobe-tracer now support tracing argument with basic types
(u8,u16,u32,u64,s8,s16,s32,s64), and perf-probe decodes the type
information of the members.
- Support canonical frame address, which is used for refering
frame-base on the kernel built without CONFIG_FRAME_POINTER.
- Remove almost all die()s from util code, according to acme's
advice. Thanks!
TODOs (possible features):
- Support array element (var[N])
- Support string/dynamic arrays (*var, var[N..M])
- Support tracing static variables (non global)
- Support dynamic array-indexing (var[var2])
- Support force type-casting ((type)var)
- Show what deta-structure member is assigned to each argument.
- Better support for probes on modules
- More debugger like enhancements(%next, --disasm, etc.)
Thank you,
---
Masami Hiramatsu (8):
perf probe: Remove die() from probe-event code
perf probe: Remove die() from probe-finder code
perf probe: Support DW_OP_call_frame_cfa in debuginfo
perf probe: Support basic type casting
perf probe: Query basic types from debuginfo
tracing/kprobes: Support basic types on dynamic events
perf probe: Use the last field name as the argument name
perf probe: Support argument name
Documentation/trace/kprobetrace.txt | 4
kernel/trace/trace.h | 16 -
kernel/trace/trace_kprobe.c | 535 +++++++++++++++---------
tools/perf/Documentation/perf-probe.txt | 11
tools/perf/builtin-probe.c | 74 ++-
tools/perf/util/probe-event.c | 683 ++++++++++++++++++++++---------
tools/perf/util/probe-event.h | 27 +
tools/perf/util/probe-finder.c | 586 ++++++++++++++++++---------
tools/perf/util/probe-finder.h | 1
9 files changed, 1283 insertions(+), 654 deletions(-)
--
Masami Hiramatsu
e-mail: mhiramat@redhat.com
next reply other threads:[~2010-04-06 21:58 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-04-06 22:05 Masami Hiramatsu [this message]
2010-04-06 22:05 ` [PATCH -tip v2 1/8] perf probe: Support argument name Masami Hiramatsu
2010-04-06 22:05 ` [PATCH -tip v2 2/8] perf probe: Use the last field name as the " Masami Hiramatsu
2010-04-06 22:06 ` [PATCH -tip v2 3/8] tracing/kprobes: Support basic types on dynamic events Masami Hiramatsu
2010-04-06 22:06 ` [PATCH -tip v2 4/8] perf probe: Query basic types from debuginfo Masami Hiramatsu
2010-04-06 22:06 ` [PATCH -tip v2 5/8] perf probe: Support basic type casting Masami Hiramatsu
2010-04-06 22:06 ` [PATCH -tip v2 6/8] perf probe: Support DW_OP_call_frame_cfa in debuginfo Masami Hiramatsu
2010-04-06 22:06 ` [PATCH -tip v2 7/8] perf probe: Remove die() from probe-finder code Masami Hiramatsu
2010-04-09 23:18 ` Masami Hiramatsu
2010-04-10 1:28 ` Arnaldo Carvalho de Melo
2010-04-10 4:20 ` Masami Hiramatsu
2010-04-10 14:27 ` Arnaldo Carvalho de Melo
2010-04-10 16:48 ` Masami Hiramatsu
2010-04-10 18:10 ` Arnaldo Carvalho de Melo
2010-04-06 22:06 ` [PATCH -tip v2 8/8] perf probe: Remove die() from probe-event code Masami Hiramatsu
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=20100406220542.13329.45837.stgit@localhost6.localdomain6 \
--to=mhiramat@redhat.com \
--cc=acme@redhat.com \
--cc=dle-develop@lists.sourceforge.net \
--cc=efault@gmx.de \
--cc=fweisbec@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=paulus@samba.org \
--cc=peterz@infradead.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
Powered by JetHome