summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog4
-rw-r--r--NEWS5
-rw-r--r--doc/ChangeLog4
-rw-r--r--doc/langref.tex8
-rw-r--r--stapprobes.5.in15
5 files changed, 27 insertions, 9 deletions
diff --git a/ChangeLog b/ChangeLog
index 0aa574cc..a3e99781 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2009-02-02 Stan Cox <scox@redhat.com>
+
+ * NEWS, stapprobes.5.in: Add process.label.
+
2009-02-01 Stan Cox <scox@redhat.com>
* tapsets.cxx (dwflpp::iterate_over_cu_labels): New.
diff --git a/NEWS b/NEWS
index 25ebcccf..81887a7f 100644
--- a/NEWS
+++ b/NEWS
@@ -1,5 +1,8 @@
* What's new
+- function("func").label("label") probes are now supported to allow matching
+ the label of a function.
+
- Systemtap initscript is available. This initscript allows you to run
systemtap scripts as system services (in flight recorder mode) and
control those scripts individually.
@@ -10,7 +13,7 @@
automatically from the directory.
- Serious problems associated with user-space probing in shared libraries
- was corrected, making it now possible to experiment with probe shared
+ were corrected, making it now possible to experiment with probe shared
libraries. Assuming dwarf debugging information is installed, use this
twist on the normal syntax:
diff --git a/doc/ChangeLog b/doc/ChangeLog
index 34f5dbe0..01e9dcce 100644
--- a/doc/ChangeLog
+++ b/doc/ChangeLog
@@ -1,3 +1,7 @@
+2009-02-02 Stan Cox <scox@redhat.com>
+
+ * langref.tex: Add process.label.
+
2009-01-30 Dave Brolley <brolley@redhat.com>
* Makefile.in: Regenerated.
diff --git a/doc/langref.tex b/doc/langref.tex
index 3af2bd15..5aefa278 100644
--- a/doc/langref.tex
+++ b/doc/langref.tex
@@ -706,6 +706,7 @@ kernel.function(PATTERN).call
kernel.function(PATTERN).return
kernel.function(PATTERN).return.maxactive(VALUE)
kernel.function(PATTERN).inline
+kernel.function(PATTERN).label(LPATTERN)
module(MPATTERN).function(PATTERN)
module(MPATTERN).function(PATTERN).call
module(MPATTERN).function(PATTERN).return.maxactive(VALUE)
@@ -737,8 +738,11 @@ The \textbf{.statement} variant places a probe at the exact spot, exposing those
variables that are visible there.
In the above probe descriptions, MPATTERN stands for a string literal
-that identifies the loaded kernel module of interest. It may include asterisk
-({*}), square brackets \char`\"{}{[}]\char`\"{}, and question mark (?) wildcards.
+that identifies the loaded kernel module of interest and LPATTERN
+stands for a source program label. Both MPATTERN and LPATTERN may
+include asterisk ({*}), square brackets \char`\"{}{[}]\char`\"{}, and
+question mark (?) wildcards.
+
PATTERN stands for a string literal that identifies a point in the program.
It is composed of three parts:
diff --git a/stapprobes.5.in b/stapprobes.5.in
index b50adc9d..0854be53 100644
--- a/stapprobes.5.in
+++ b/stapprobes.5.in
@@ -263,6 +263,8 @@ kernel.function(PATTERN).return
.br
kernel.function(PATTERN).inline
.br
+kernel.function(PATTERN).label(LPATTERN)
+.br
module(MPATTERN).function(PATTERN)
.br
module(MPATTERN).function(PATTERN).call
@@ -280,8 +282,10 @@ module(MPATTERN).statement(PATTERN)
.ESAMPLE
In the above list, MPATTERN stands for a string literal that aims to
-identify the loaded kernel module of interest. It may include "*", "[]",
-and "?" wildcards. PATTERN stands for a string literal that
+identify the loaded kernel module of interest and LPATTERN stands for
+a source program label. Both MPATTERN and LPATTERN may include the "*"
+"[]", and "?" wildcards.
+PATTERN stands for a string literal that
aims to identify a point in the program. It is made up of three
parts:
.IP \(bu 4
@@ -445,14 +449,13 @@ A
.B .mark
probe gets called via a static probe which is defined in the
application by
-STAP_PROBE1(handle,LABEL,arg1). The handle is an application handle,
+STAP_PROBE1(handle,LABEL,arg1), which is defined in sdt.h. The handle is an application handle,
LABEL corresponds to the .mark argument, and arg1 is the argument.
STAP_PROBE1 is used for probes with 1 argument, STAP_PROBE2 is used
for probes with 2 arguments, and so on.
The arguments of the probe are available in the context variables
-$arg1, $arg2, ...
-The application should be compiled with ../share/systemtap/runtime/sduprobes.h
-and should be linked with libsduprobes.a.
+$arg1, $arg2, ... An alternative to using the STAP_PROBE macros is to
+use the dtrace script to create custom macros.
.PP
Note that
.I PATH