summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLubomir Rintel <lkundrak@v3.sk>2009-03-19 13:02:19 -0400
committerFrank Ch. Eigler <fche@elastic.org>2009-03-19 13:02:19 -0400
commite2ae0696f7b8cbbafad87a8739c0cc450f7ee887 (patch)
tree035ed5b52e56df6a72227ab41d7f0add39477c12
parent59b30bda24855bc46608a126efad8e150196721c (diff)
downloadsystemtap-steved-e2ae0696f7b8cbbafad87a8739c0cc450f7ee887.tar.gz
systemtap-steved-e2ae0696f7b8cbbafad87a8739c0cc450f7ee887.tar.xz
systemtap-steved-e2ae0696f7b8cbbafad87a8739c0cc450f7ee887.zip
Disable kprobe blacklist in guru mode.
-rw-r--r--NEWS5
-rw-r--r--tapsets.cxx14
2 files changed, 16 insertions, 3 deletions
diff --git a/NEWS b/NEWS
index 74fd1df5..fff8afc9 100644
--- a/NEWS
+++ b/NEWS
@@ -1,5 +1,10 @@
* What's new
+- In guru mode (-g), the kernel probing blacklist is disabled, leaving
+ only a subset - the kernel's own internal kprobe blacklist - to attempt
+ to filter out areas unsafe to probe. The differences may be enough to
+ probe more interrupt handlers.
+
- Variables unavailable in current context may be skipped by setting a
session level flag with command line option --skip-badvars now available.
This will simply substitute the otherwise error causing variable with a
diff --git a/tapsets.cxx b/tapsets.cxx
index 894a7447..6de6271b 100644
--- a/tapsets.cxx
+++ b/tapsets.cxx
@@ -3521,9 +3521,17 @@ dwarf_query::blacklisted_p(const string& funcname,
if (! (goodfn && goodfile))
{
- if (sess.verbose>1)
- clog << " skipping - blacklisted";
- return true;
+ if (sess.guru_mode)
+ {
+ if (sess.verbose>1)
+ clog << " guru mode enabled - ignoring blacklist";
+ }
+ else
+ {
+ if (sess.verbose>1)
+ clog << " skipping - blacklisted";
+ return true;
+ }
}
// This probe point is not blacklisted.