summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFrank Ch. Eigler <fche@elastic.org>2008-09-02 10:25:20 -0400
committerFrank Ch. Eigler <fche@elastic.org>2008-09-02 10:25:20 -0400
commite070cc9c2f207bdaac1f3ca2c0ac4e291185bff1 (patch)
tree1d4470148c2f4c611d7f6a976a4f4a831379f7a4
parentccf26785e0a524c0cd510d83906cf9b4a1d77515 (diff)
downloadsystemtap-steved-e070cc9c2f207bdaac1f3ca2c0ac4e291185bff1.tar.gz
systemtap-steved-e070cc9c2f207bdaac1f3ca2c0ac4e291185bff1.tar.xz
systemtap-steved-e070cc9c2f207bdaac1f3ca2c0ac4e291185bff1.zip
add user-space probing blurb
-rw-r--r--NEWS37
1 files changed, 31 insertions, 6 deletions
diff --git a/NEWS b/NEWS
index fec89559..be56757d 100644
--- a/NEWS
+++ b/NEWS
@@ -1,5 +1,30 @@
* What's new
+- All user-space-related probes support $PATH-resolved executable
+ names, so
+
+ probe process("ls").syscall {}
+ probe process("./a.out").syscall {}
+
+ work now, instead of just
+
+ probe process("/bin/ls").syscall {}
+ probe process("/my/directory/a.out").syscall {}
+
+- Prototype symbolic user-space probing support:
+
+ # stap -e 'probe process("ls").function("*").call {
+ log (probefunc()." ".$$parms)
+ }' \
+ -c 'ls -l'
+
+ This requires:
+ - debugging information for the named program
+ - a version of utrace in the kernel that is compatible with the "uprobes"
+ kernel module prototype. This includes RHEL5 and older Fedora, but not
+ yet current lkml-track utrace; a "pass 4a"-time build failure means
+ your system cannot use this yet.
+
- Prototype systemtap client and compile server are now available.
These allow you to compile a systemtap module on a host other than
the one which it will be run, providing the client and server
@@ -10,10 +35,10 @@
was specified. See stap-server(8) for more details.
- Global variables which are written to but never read are now
- automatically displayed when the session does a shutdown. For example:
+ automatically displayed when the session does a shutdown. For example:
- global running_tasks
- probe timer.profile {running_tasks[pid(),tid()] = execname()}
+ global running_tasks
+ probe timer.profile {running_tasks[pid(),tid()] = execname()}
probe timer.ms(8000) {exit()}
- A formatted string representation of the variables, parameters, or local
@@ -109,7 +134,7 @@
printf ("%*d", four, two) // prints <space><space><space>2
- Preprocessor conditional expressions can now include wildcard style
- matches on kernel versions.
+ matches on kernel versions.
%( kernel_vr != "*xen" %? foo %: bar %)
- Prototype support for user-space probing is showing some progress.
@@ -303,12 +328,12 @@
handlers are invoked, as a safety improvement.
- Add an optional numeric parameter for begin/end probe specifications,
- to order their execution.
+ to order their execution.
probe begin(10) { } /* comes after */ probe begin(-10) {}
- Add an optional array size declaration, which is handy for very small
or very large ones.
- global little[5], big[20000]
+ global little[5], big[20000]
- Include some example scripts along with the documentation.