This is the mail archive of the
systemtap-cvs@sourceware.org
mailing list for the systemtap project.
[SCM] systemtap: system-wide probe/trace tool branch, master, updated. release-1.0-210-gaf234c4
- From: jistone at sourceware dot org
- To: systemtap-cvs at sourceware dot org
- Date: 11 Nov 2009 02:51:03 -0000
- Subject: [SCM] systemtap: system-wide probe/trace tool branch, master, updated. release-1.0-210-gaf234c4
- Reply-to: systemtap at sourceware dot org
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "systemtap: system-wide probe/trace tool".
The branch, master has been updated
via af234c407dbab3e62994863272a63b612b0c8c63 (commit)
from b513cd75dac185ac258dc8260a01891c30be6251 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit af234c407dbab3e62994863272a63b612b0c8c63
Author: Josh Stone <jistone@redhat.com>
Date: Tue Nov 10 18:37:02 2009 -0800
PR5916: Exploit kretprobe data storage area
Since 2.6.25, kretprobes can carry a data packet to be filled in an
entry_handler. This patch lets us store our implicitly-saved $target
variables in .return probes in that data area.
* tapset/kretprobe.stp: New get/set functions for kretprobe data.
* translate.cxx (c_unparser::emit_common_header): Add context->pi_longs.
* tapsets.cxx
(dwarf_var_expanding_visitor::visit_target_symbol_saved_return): Switch
between the old and new methods of saving $vars in .return probes.
(dwarf_var_expanding_visitor::gen_mapped_saved_return): The old way.
(dwarf_var_expanding_visitor::gen_kretprobe_saved_return): The new way.
(dwarf_derived_probe::join_group): Don't register paired entry-handlers.
(dwarf_derived_probe::dwarf_derived_probe): Remember saved-var details.
(dwarf_derived_probe_group::emit_module_decls): Output saved-var details.
Also split the kretprobe handler whether we're on entry or return.
(dwarf_derived_probe_group::emit_module_init): Prepare the entry handler.
* testsuite/systemtap.base/kretprobe-vars.stp: Test implicit $var saving.
-----------------------------------------------------------------------
Summary of changes:
tapset/kretprobe.stp | 56 ++++++++
tapsets.cxx | 187 +++++++++++++++++++++++----
testsuite/systemtap.base/kretprobe-vars.exp | 4 +
testsuite/systemtap.base/kretprobe-vars.stp | 70 ++++++++++
translate.cxx | 1 +
5 files changed, 291 insertions(+), 27 deletions(-)
create mode 100644 tapset/kretprobe.stp
create mode 100644 testsuite/systemtap.base/kretprobe-vars.exp
create mode 100644 testsuite/systemtap.base/kretprobe-vars.stp
hooks/post-receive
--
systemtap: system-wide probe/trace tool