diff options
author | fche <fche> | 2005-09-28 03:20:10 +0000 |
---|---|---|
committer | fche <fche> | 2005-09-28 03:20:10 +0000 |
commit | ab55a5ae680bdc687e0b057a8b19596106c0885b (patch) | |
tree | c0390fe0f5cebcd116e10b805b278cd8eb9f7156 /tapsets.cxx | |
parent | 5b328efe93befa4d48774985bd0254560d9c8470 (diff) | |
download | systemtap-steved-ab55a5ae680bdc687e0b057a8b19596106c0885b.tar.gz systemtap-steved-ab55a5ae680bdc687e0b057a8b19596106c0885b.tar.xz systemtap-steved-ab55a5ae680bdc687e0b057a8b19596106c0885b.zip |
2005-09-27 Frank Ch. Eigler <fche@elastic.org>
* tapsets.cxx (query_cu_containing_global_address): Tolerate
way out of range addresses that result in null cudie pointers.
Diffstat (limited to 'tapsets.cxx')
-rw-r--r-- | tapsets.cxx | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/tapsets.cxx b/tapsets.cxx index 7eaf11f4..fae73e56 100644 --- a/tapsets.cxx +++ b/tapsets.cxx @@ -357,7 +357,9 @@ dwflpp get_module_dwarf(); if (false && sess.verbose) clog << "focusing on cu containing global addr " << a << endl; - query_cu (dwfl_module_addrdie(module, a, &bias), arg); + Dwarf_Die* cudie = dwfl_module_addrdie(module, a, &bias); + if (cudie) // address could be wildly out of range + query_cu (cudie, arg); assert(bias == module_bias); } @@ -2269,9 +2271,8 @@ dwarf_derived_probe::register_patterns(match_node * root) // .process("foo") register_function_and_statement_variants(root->bind(TOK_KERNEL), dw); - // XXX: may need to disable these for 2005-08 release register_function_and_statement_variants(root->bind_str(TOK_MODULE), dw); - register_function_and_statement_variants(root->bind_str(TOK_PROCESS), dw); + // register_function_and_statement_variants(root->bind_str(TOK_PROCESS), dw); } static string |