diff options
Diffstat (limited to 'testsuite/systemtap.base')
-rw-r--r-- | testsuite/systemtap.base/array_size.exp | 7 | ||||
-rw-r--r-- | testsuite/systemtap.base/array_size.stp | 30 |
2 files changed, 37 insertions, 0 deletions
diff --git a/testsuite/systemtap.base/array_size.exp b/testsuite/systemtap.base/array_size.exp new file mode 100644 index 00000000..86aec8ab --- /dev/null +++ b/testsuite/systemtap.base/array_size.exp @@ -0,0 +1,7 @@ +# Check that specifying an array size gives more room than MAXMAPENTRIES + +load_lib "stap_run.exp" + +set test "array_size" + +stap_run $srcdir/$subdir/$test.stp no_load $all_pass_string -DMAXMAPENTRIES=1 diff --git a/testsuite/systemtap.base/array_size.stp b/testsuite/systemtap.base/array_size.stp new file mode 100644 index 00000000..cf597a61 --- /dev/null +++ b/testsuite/systemtap.base/array_size.stp @@ -0,0 +1,30 @@ +/* + * array_size.stp + * + * Check that specifying an array size gives more room than MAXMAPENTRIES + * + * Call with MAXMAPENTRIES << 100 + */ + +probe begin { log("systemtap starting probe") } +probe end { log("systemtap ending probe") } + +global a[100] + +probe begin { + for (i=42; i<142; ++i) + a[i] = i*i +} + +probe end(1) { + for (i=42; i<142; ++i) { + if (a[i] == i*i) + ++ok + else + ++bad + } + if (ok == 100 && bad == 0) + log("systemtap test success") + else + printf("systemtap test failure - ok:%d, bad:%d\n", ok, bad) +} |