summaryrefslogtreecommitdiffstats
path: root/tapsets.cxx
diff options
context:
space:
mode:
authorFrank Ch. Eigler <fche@elastic.org>2009-10-08 17:36:36 -0400
committerFrank Ch. Eigler <fche@elastic.org>2009-10-08 17:36:36 -0400
commite34d5d1388d3c7817313685e3f7424ffc158474f (patch)
treeac39f35f47beae8d304e772f653f8d9331290670 /tapsets.cxx
parent1beb508976ba5a79758ffe6e174f47a64225f449 (diff)
downloadsystemtap-steved-e34d5d1388d3c7817313685e3f7424ffc158474f.tar.gz
systemtap-steved-e34d5d1388d3c7817313685e3f7424ffc158474f.tar.xz
systemtap-steved-e34d5d1388d3c7817313685e3f7424ffc158474f.zip
PR10746: improve error message on utrace-less kernels
* tapset-itrace.exp (itrace_derived_probe ctor): Fail if !CONFIG_UTRACE. * tapset-utrace.exp (utrace_derived_probe ctor): Fail if !CONFIG_UTRACE. * tapsets.cxx (dwarf_builder::build): Fail process.* if !CONFIG_UTRACE. * testsuite/semko/utrace.stp: New test.
Diffstat (limited to 'tapsets.cxx')
-rw-r--r--tapsets.cxx3
1 files changed, 3 insertions, 0 deletions
diff --git a/tapsets.cxx b/tapsets.cxx
index 09ead991..9aa4964f 100644
--- a/tapsets.cxx
+++ b/tapsets.cxx
@@ -3882,6 +3882,9 @@ dwarf_builder::build(systemtap_session & sess,
{
module_name = find_executable (module_name); // canonicalize it
+ if (sess.kernel_config["CONFIG_UTRACE"] != string("y"))
+ throw semantic_error ("process probes not available without kernel CONFIG_UTRACE");
+
// user-space target; we use one dwflpp instance per module name
// (= program or shared library)
dw = get_user_dw(sess, module_name);