diff options
author | fche <fche> | 2006-08-12 05:13:09 +0000 |
---|---|---|
committer | fche <fche> | 2006-08-12 05:13:09 +0000 |
commit | 814bc89d4635f101b2c0077598f31aad95ed15b7 (patch) | |
tree | 407a49dbaf446af4751f5068607a7fb8dad0611d /testsuite/systemtap.samples/iotask.stp | |
parent | 6b6d04673a1ef175821afc7d4fabdb496698e8e3 (diff) | |
download | systemtap-steved-814bc89d4635f101b2c0077598f31aad95ed15b7.tar.gz systemtap-steved-814bc89d4635f101b2c0077598f31aad95ed15b7.tar.xz systemtap-steved-814bc89d4635f101b2c0077598f31aad95ed15b7.zip |
2006-08-12 Frank Ch. Eigler <fche@elastic.org>
* configure.ac, Makefile.am: Descend into testsuite/
directory. Remove local test logic.
* configure, Makefile.in: Regenerated.
* runtest.sh: Not yet removed.
* HACKING: Update for new testsuite layout.
2006-08-12 Frank Ch. Eigler <fche@elastic.org>
* all: Reorganized old pass-1..4 tests one dejagnu bucket.
Moved over old pass-5 tests, except for disabled syscalls tests.
* Makefile (installcheck): New target for running pass-1..5
tests against installed systemtap.
Diffstat (limited to 'testsuite/systemtap.samples/iotask.stp')
-rw-r--r-- | testsuite/systemtap.samples/iotask.stp | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/testsuite/systemtap.samples/iotask.stp b/testsuite/systemtap.samples/iotask.stp new file mode 100644 index 00000000..13d273a3 --- /dev/null +++ b/testsuite/systemtap.samples/iotask.stp @@ -0,0 +1,45 @@ +# iotask.stp +# A reimplementation of user script: iotask.stp given at OLS 2005 +# in the current language. +# +# Will Cohen +# 9/22/2005 + +global names, opens +global reads, read_bytes +global writes, write_bytes + +probe kernel.function("sys_open") { + ++names[execname()]; ++opens[execname()]; +} + +probe kernel.function("sys_read") { + ++names[execname()]; ++reads[execname()]; + read_bytes[execname()] += $count; +} + +probe kernel.function("sys_write") { + ++names[execname()]; ++writes[execname()]; + write_bytes[execname()] += $count; +} + +probe begin { log( "starting probe" ); } + +probe end { + foreach( name in names){ + log ("process: " . name); + if (opens[name]) + log( "opens n=" . sprint(opens[name])); + if ( reads[name]){ + count = reads[name]; total=read_bytes[name]; + log("reads n, sum, avg=". sprint(count) + . "," . sprint(total) . "," . sprint(total/count)); + } + if (writes[name]){ + count = writes[name]; total=write_bytes[name]; + log("writes n, sum, avg=". sprint(count) + . "," . sprint(total) . "," . sprint(total/count)); + } + log(""); + } +} |