diff options
author | Stan Cox <scox@redhat.com> | 2009-06-16 12:58:33 -0400 |
---|---|---|
committer | Stan Cox <scox@redhat.com> | 2009-06-16 12:59:22 -0400 |
commit | de7c5583f657bb42980f66d3b88572241b676f76 (patch) | |
tree | dbdd0e88d73b16ab48dbe727060ea95c149e33a2 /tapsets.cxx | |
parent | 611ab8263198e3e8c2640cb4a3e1eb65e2037f96 (diff) | |
download | systemtap-steved-de7c5583f657bb42980f66d3b88572241b676f76.tar.gz systemtap-steved-de7c5583f657bb42980f66d3b88572241b676f76.tar.xz systemtap-steved-de7c5583f657bb42980f66d3b88572241b676f76.zip |
Support -L for kprobe and utrace static user markers.
tapsets.cxx (dwarf_builder::build): Special case listing mode for kprobe and utrace.
Diffstat (limited to 'tapsets.cxx')
-rw-r--r-- | tapsets.cxx | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/tapsets.cxx b/tapsets.cxx index 5e9deb9b..843b6017 100644 --- a/tapsets.cxx +++ b/tapsets.cxx @@ -3482,9 +3482,9 @@ dwarf_builder::build(systemtap_session & sess, do { set<string>::iterator pb; - pb = probes_handled.find(probe_table.mark_name); + pb = probes_handled.find(probe_table.probe_name); if (pb == probes_handled.end()) - probes_handled.insert (probe_table.mark_name); + probes_handled.insert (probe_table.probe_name); else return; @@ -3504,6 +3504,13 @@ dwarf_builder::build(systemtap_session & sess, new_base->body = svv.require (new_base->body); probe_table.convert_location(new_base, new_location); derive_probes(sess, new_base, finished_results); + if (sess.listing_mode) + { + finished_results.back()->locations[0]->components[0]->functor = TOK_FUNCTION; + finished_results.back()->locations[0]->components[0]->arg = new literal_string (module_name); + finished_results.back()->locations[0]->components[1]->functor = TOK_MARK; + finished_results.back()->locations[0]->components[1]->arg = new literal_string (probe_table.probe_name.c_str()); + } } while (probe_table.get_next_probe()); return; |