summaryrefslogtreecommitdiffstats
path: root/testsuite
diff options
context:
space:
mode:
authorFrank Ch. Eigler <fche@elastic.org>2008-11-21 15:10:50 -0500
committerFrank Ch. Eigler <fche@elastic.org>2008-11-21 15:10:50 -0500
commitb3c3ca7cb6c0280e8116845d6513b786ac0caf83 (patch)
tree8cc511540dedde3785a748a9e208d63745f6d2c7 /testsuite
parentce5cddc50edd07aeb34e5f7ea6ee4b5e229f6ea2 (diff)
downloadsystemtap-steved-b3c3ca7cb6c0280e8116845d6513b786ac0caf83.tar.gz
systemtap-steved-b3c3ca7cb6c0280e8116845d6513b786ac0caf83.tar.xz
systemtap-steved-b3c3ca7cb6c0280e8116845d6513b786ac0caf83.zip
PR5689 part 2: separate skip counters for low-stack and reentrancy cases
Diffstat (limited to 'testsuite')
-rw-r--r--testsuite/ChangeLog5
-rw-r--r--testsuite/systemtap.base/skipped.exp21
2 files changed, 26 insertions, 0 deletions
diff --git a/testsuite/ChangeLog b/testsuite/ChangeLog
index 96095b26..24f0cbdd 100644
--- a/testsuite/ChangeLog
+++ b/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2008-11-21 Frank Ch. Eigler <fche@elastic.org>
+
+ PR5689.
+ * systemtap.base/skipped.exp: New test.
+
2008-11-19 Jim Keniston <jkenisto@us.ibm.com>
* systemtap.context/num_args.stp: Added s390x case.
diff --git a/testsuite/systemtap.base/skipped.exp b/testsuite/systemtap.base/skipped.exp
new file mode 100644
index 00000000..8c491037
--- /dev/null
+++ b/testsuite/systemtap.base/skipped.exp
@@ -0,0 +1,21 @@
+set test "skip tracking"
+
+if {! [installtest_p]} { untested $test; return }
+
+set cpus [exec sh -c "grep ^processor /proc/cpuinfo | wc -l"]
+if {$cpus < 2} { unsupported $test; return }
+
+set ok 0
+spawn stap -e "probe timer.s(5) {exit()} probe timer.profile,syscall.* {f++} global f" -DMAXTRYLOCK=0 -tu
+expect {
+ -timeout 30
+ -re {^WARNING: Number of errors: 0, skipped probes: [0-9]+\r\n} { incr ok; exp_continue }
+ -re {^WARNING: Skipped due to global .f. lock timeout: [0-9]+\r\n} { incr ok; exp_continue }
+ -re {^probe timer.profile[^\r\n]+, hits: [0-9]+[^\r\n]+\r\n} { incr ok; exp_continue }
+ eof { }
+ timeout { fail "$test (timeout)" }
+}
+catch {close}
+catch {wait}
+
+if {$ok >= 3} { pass "$test ($cpus $ok)" } else { fail "$test ($cpus $ok)" }