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 | |
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.
-rw-r--r-- | tapsets.cxx | 11 | ||||
-rw-r--r-- | testsuite/systemtap.base/static_uprobes.exp | 13 |
2 files changed, 11 insertions, 13 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; diff --git a/testsuite/systemtap.base/static_uprobes.exp b/testsuite/systemtap.base/static_uprobes.exp index 41dc3ec0..6a597646 100644 --- a/testsuite/systemtap.base/static_uprobes.exp +++ b/testsuite/systemtap.base/static_uprobes.exp @@ -165,12 +165,7 @@ wait if {$ok == 5} { pass "$test $pbtype_mssg" } else { - if { $pbtype_mssg == "uprobe" } { - fail "$test ($ok) $pbtype_mssg" - } else { - # probe fires multiple times - xfail "$test ($ok) $pbtype_mssg" - } + fail "$test ($ok) $pbtype_mssg" } # Test passing various C types to .mark probes @@ -225,11 +220,7 @@ expect { if { $ok == 45 } { pass "$test wildcard $pbtype_mssg" } else { - if { $pbtype_mssg == "uprobe" } { - fail "$test wildcard ($ok) $pbtype_mssg" - } else { - xfail "$test wildcard ($ok) $pbtype_mssg" - } + fail "$test wildcard ($ok) $pbtype_mssg" } # for {set i 0} |