[perl] Add systemtap probes for new DTrace markers

Lubomir Rintel lkundrak at fedoraproject.org
Fri Mar 20 11:27:48 UTC 2015


commit 6f6f8fdb06c3b1c54a3c25e0ac5fb47945be3e94
Author: Lubomir Rintel <lkundrak at v3.sk>
Date:   Thu Mar 19 19:07:02 2015 +0100

    Add systemtap probes for new DTrace markers

 perl.spec |  5 ++++-
 perl.stp  | 42 +++++++++++++++++++++++++++++++++++++-----
 2 files changed, 41 insertions(+), 6 deletions(-)
---
diff --git a/perl.spec b/perl.spec
index d278664..bca43e8 100644
--- a/perl.spec
+++ b/perl.spec
@@ -30,7 +30,7 @@
 Name:           perl
 Version:        %{perl_version}
 # release number must be even higher, because dual-lived modules will be broken otherwise
-Release:        323%{?dist}
+Release:        324%{?dist}
 Epoch:          %{perl_epoch}
 Summary:        Practical Extraction and Report Language
 Group:          Development/Languages
@@ -3841,6 +3841,9 @@ sed \
 
 # Old changelog entries are preserved in CVS.
 %changelog
+* Thu Mar 19 2015 Lubomir Rintel <lkundrak at v3.sk> - 4:5.20.2-324
+- Add systemtap probes for new dtrace markers
+
 * Mon Mar 16 2015 Petr Pisar <ppisar at redhat.com> - 4:5.20.2-323
 - Move perl(:MODULE_COMPAT_*) symbol and include directories to perl-libs
   package (bug #1174951)
diff --git a/perl.stp b/perl.stp
index ccc203b..dbc51a8 100644
--- a/perl.stp
+++ b/perl.stp
@@ -12,9 +12,9 @@ probe perl.sub.call = process("LIBRARY_PATH").mark("sub__entry")
 
 }
 
-/* 
-   This probe will fire when the return from a subroutine has been 
-   hit.  
+/*
+   This probe will fire when the return from a subroutine has been
+   hit.
  */
 
 probe perl.sub.return = process("LIBRARY_PATH").mark("sub__return")
@@ -27,7 +27,7 @@ probe perl.sub.return = process("LIBRARY_PATH").mark("sub__return")
 
 }
 
-/* 
+/*
    This probe will fire when the Perl interperter changes state.
  */
 
@@ -35,5 +35,37 @@ probe perl.phase.change = process("LIBRARY_PATH").mark("phase__change")
 {
   newphase = user_string($arg1)
   oldphase = user_string($arg2)
-  
+
+}
+
+
+/*
+   Fires when Perl has successfully loaded an individual file.
+ */
+
+probe perl.loaded.file = process("LIBRARY_PATH").mark("loaded__file")
+{
+  filename = user_string($arg1)
+
+}
+
+
+/*
+   Fires when Perl is about to load an individual file.
+ */
+
+probe perl.loading.file = process("LIBRARY_PATH").mark("loading__file")
+{
+  filename = user_string($arg1)
+
+}
+
+
+/*
+   Traces the execution of each opcode in the Perl runloop.
+ */
+
+probe perl.op.entry = process("LIBRARY_PATH").mark("op__entry")
+{
+  opname = user_string($arg1)
 }


More information about the perl-devel mailing list