diff options
author | Frank Ch. Eigler <fche@elastic.org> | 2009-08-13 22:53:44 -0400 |
---|---|---|
committer | Frank Ch. Eigler <fche@elastic.org> | 2009-08-14 09:04:18 -0400 |
commit | 671ceda847955e31bc3ab310eb180fdc687a2ca8 (patch) | |
tree | 9fcfa58a88eef99b3c326da8ed641c9a93ffa610 /runtime | |
parent | b9bee53ec058c142ac5ba010224dd75669d61ad5 (diff) | |
download | systemtap-steved-671ceda847955e31bc3ab310eb180fdc687a2ca8.tar.gz systemtap-steved-671ceda847955e31bc3ab310eb180fdc687a2ca8.tar.xz systemtap-steved-671ceda847955e31bc3ab310eb180fdc687a2ca8.zip |
PR10228: use task_finder_vma for -d /user/object files.
* main.cxx (main): For "-d /path" arguments, enable task finder.
* runtime/sym.h (_stp_module): Add *vmcb member.
* task_finder{.cxx,.h} (emit_vma_callback_probe_decl): Zap.
* tapset-itrace.cxx, tapset-utrace.cxx: Use unwindsyms_modules
instead.
* tapsets.cxx (uprobe::emit_module_decls): Ditto.
* translate.cxx (emit_module_init): Emit task finder registrations
for vmcb's associated with _stp_modules.
(dump_unwindsyms): Associate vmcbs with user-space unwindsyms entries.
Diffstat (limited to 'runtime')
-rw-r--r-- | runtime/sym.c | 4 | ||||
-rw-r--r-- | runtime/sym.h | 2 |
2 files changed, 4 insertions, 2 deletions
diff --git a/runtime/sym.c b/runtime/sym.c index 35fb3cb0..30b6fc5a 100644 --- a/runtime/sym.c +++ b/runtime/sym.c @@ -31,8 +31,8 @@ static void _stp_sym_init(void) } } -/* Callback that needs to be registered (in tapsets.cxx for - emit_module_init) for every user task path or pid for which we +/* Callback that needs to be registered (in + session.unwindsyms_modules) for every user task path for which we might need symbols or unwind info. */ static int _stp_tf_mmap_cb(struct stap_task_finder_target *tgt, struct task_struct *tsk, diff --git a/runtime/sym.h b/runtime/sym.h index ca69345f..262b1776 100644 --- a/runtime/sym.h +++ b/runtime/sym.h @@ -30,6 +30,8 @@ struct _stp_module { struct _stp_section *sections; unsigned num_sections; + struct stap_task_finder_target *vmcb; /* PR10228 */ + /* A pointer to the struct module. Note that we cannot */ /* trust this because as of 2.6.19, there are not yet */ /* any notifier hooks that will tell us when a module */ |