diff options
author | Josh Stone <jistone@redhat.com> | 2009-07-21 19:21:56 -0700 |
---|---|---|
committer | Josh Stone <jistone@redhat.com> | 2009-07-21 19:30:52 -0700 |
commit | edce5b6764d5a4fe742b1a9cc44fc2fe146b44c7 (patch) | |
tree | ff23fde761ad507f04b05d169001328481f5951a /dwflpp.cxx | |
parent | e1278bd4195c3cb3bad7045234d845f7213e1c6e (diff) | |
download | systemtap-steved-edce5b6764d5a4fe742b1a9cc44fc2fe146b44c7.tar.gz systemtap-steved-edce5b6764d5a4fe742b1a9cc44fc2fe146b44c7.tar.xz systemtap-steved-edce5b6764d5a4fe742b1a9cc44fc2fe146b44c7.zip |
Use the query paradigm for resolving sdt probes
There was a bad assumption in the probe_table initialization that the
dwflpp->module would be immediately valid. We should not assume that
dwflpp only has one module, or that any module is necessarily in focus.
Instead, I've created an sdt_query class which will call an
iterate_over_modules like the other dwarf probe types. For now this
means just a single module, but it will also open the door to iterating
over all linked libraries too, for example.
* dwflpp.cxx (dwflpp::setup_user): don't "save mod!" anymore
* tapsets.cxx (probe_table -> sdt_query): convert to a query-style
class, and also take over the task of iterating over the probes.
(dwarf_builder::build): leave the iteration to sdt_query
Diffstat (limited to 'dwflpp.cxx')
-rw-r--r-- | dwflpp.cxx | 2 |
1 files changed, 0 insertions, 2 deletions
@@ -417,8 +417,6 @@ dwflpp::setup_user(const vector<string>& modules, bool debuginfo_needed) module_name.c_str(), module_name.c_str(), -1); - // XXX: save mod! - module = mod; if (debuginfo_needed) dwfl_assert (string("missing process ") + |