diff options
author | Andi Kleen <ak@linux.intel.com> | 2009-12-09 16:43:32 +0100 |
---|---|---|
committer | Andi Kleen <ak@linux.intel.com> | 2009-12-09 16:46:15 +0100 |
commit | d9a41d33dc988724393a733f9782ee599ed37baf (patch) | |
tree | 9ecc7f5c3a32cb3375d9c17fc4754c61d6c5cd76 /tests | |
parent | 0c2cd4a6eb20587c8f3cc759a6d9918abb76684d (diff) | |
download | mcelog-d9a41d33dc988724393a733f9782ee599ed37baf.tar.gz |
Add simple test suite in tests/RELEASE_1_0_PRE1
Signed-off-by: Andi Kleen <ak@linux.intel.com>
Diffstat (limited to 'tests')
-rw-r--r-- | tests/Makefile | 10 | ||||
-rw-r--r-- | tests/cache/cache.conf | 10 | ||||
-rw-r--r-- | tests/cache/trigger | 3 | ||||
-rw-r--r-- | tests/cache/yellow.conf | 5 | ||||
-rw-r--r-- | tests/memdb/memdb.conf | 7 | ||||
-rw-r--r-- | tests/page/page.conf | 5 | ||||
-rw-r--r-- | tests/socket/socket.conf | 7 | ||||
-rwxr-xr-x | tests/socket/trigger | 4 | ||||
-rwxr-xr-x | tests/test | 62 | ||||
-rwxr-xr-x | tests/trigger (renamed from tests/memdb/trigger) | 2 |
10 files changed, 97 insertions, 18 deletions
diff --git a/tests/Makefile b/tests/Makefile new file mode 100644 index 0000000..cf4120d --- /dev/null +++ b/tests/Makefile @@ -0,0 +1,10 @@ +.PHONY: test clean + +test: + ./test cache + ./test page + ./test memdb + ./test socket + +clean: + rm -f */log diff --git a/tests/cache/cache.conf b/tests/cache/cache.conf new file mode 100644 index 0000000..8df9fbd --- /dev/null +++ b/tests/cache/cache.conf @@ -0,0 +1,10 @@ +# trigger: 2 + +num-errors = 3 + +[cache] +cache-threshold-trigger = ../trigger + +[trigger] +directory = . +children-max = 3 diff --git a/tests/cache/trigger b/tests/cache/trigger deleted file mode 100644 index 81c93fb..0000000 --- a/tests/cache/trigger +++ /dev/null @@ -1,3 +0,0 @@ -#!/bin/sh - -env diff --git a/tests/cache/yellow.conf b/tests/cache/yellow.conf deleted file mode 100644 index 7fd0348..0000000 --- a/tests/cache/yellow.conf +++ /dev/null @@ -1,5 +0,0 @@ -[cache] -cache-threshold-trigger = trigger - -[trigger] -directory = . diff --git a/tests/memdb/memdb.conf b/tests/memdb/memdb.conf index ef123d5..e4c7afd 100644 --- a/tests/memdb/memdb.conf +++ b/tests/memdb/memdb.conf @@ -1,12 +1,15 @@ +# trigger: 2 + cpu = nehalem dmi = yes filter-memory-errors = yes +num-errors = 2 [dimm] dimm-tracking-enabled = yes -ce-error-trigger = trigger +ce-error-trigger = ../trigger ce-error-threshold = 1 / 1min -uc-error-trigger = trigger +uc-error-trigger = ../trigger uc-error-threshold = 1 / 1min [trigger] diff --git a/tests/page/page.conf b/tests/page/page.conf index e5f6edc..e6fe92d 100644 --- a/tests/page/page.conf +++ b/tests/page/page.conf @@ -1,6 +1,9 @@ +# trigger: 1 +num-errors = 6 + [page] memory-ce-threshold = 2 / 1h -memory-ce-trigger = trigger +memory-ce-trigger = ../trigger #memory-ce-action = off|account|soft|hard|soft-then-hard memory-ce-action = account diff --git a/tests/socket/socket.conf b/tests/socket/socket.conf index 25f4f4c..f037275 100644 --- a/tests/socket/socket.conf +++ b/tests/socket/socket.conf @@ -1,14 +1,17 @@ +# trigger: 2 + cpu = nehalem dmi = yes +num-errors = 2 [dimm] dimm-tracking-enabled = yes [socket] socket-tracking-enabled = yes -mem-ce-error-trigger = trigger +mem-ce-error-trigger = ../trigger mem-ce-error-threshold = 1 / 1min -mem-uc-error-trigger = trigger +mem-uc-error-trigger = ../trigger mem-uc-error-threshold = 1 / 1min [trigger] diff --git a/tests/socket/trigger b/tests/socket/trigger deleted file mode 100755 index 4df6961..0000000 --- a/tests/socket/trigger +++ /dev/null @@ -1,4 +0,0 @@ -#!/bin/sh - -echo trigger -env diff --git a/tests/test b/tests/test new file mode 100755 index 0000000..e8c2751 --- /dev/null +++ b/tests/test @@ -0,0 +1,62 @@ +#!/bin/sh +# simple test harness for mcelog daemon trigger test cases +# ./test subdir [debugger] +# run mcelog test in specific sub directory +# requires root rights and a built mce-inject in ../../mce-inject or $PATH +# warning: this kills any other running mcelogs + +D=${2:-} + +if [ "$1" = "" ] ; then + echo "usage $0 testdir" + exit 1 +fi + +if [ "$(whoami)" != "root" ] ; then + echo "Must run as root" + exit 1 +fi + +echo "++++++++++++ running $1 test +++++++++++++++++++" + +killall mcelog || true + +#killwatchdog() { +# kill %1 || true +#} +# +#watchdog() { +# sleep 10 +# echo timeout waiting for mcelog +# killall mcelog +#} + +cd $1 +./inject +#trap killwatchdog 0 +#watchdog & +rm -f log +$D ../../mcelog --foreground --daemon --config $1.conf --logfile log + +# let triggers finish +sleep 1 + +NUMT="$(awk '/# trigger: / { print $3 }' $1.conf)" +NUMC="$(grep -c 'Running trigger' log || true)" + +if [ "$NUMC" = 0 ] ; then + echo "$1: no triggers at all" + exit 1 +fi + +if [ "$NUMT" != "" ] ; then + if [ "$NUMC" != "$NUMT" ] ; then + echo "$1: triggers did not trigger as expected: $NUMT != $NUMC" + exit 1 + fi +else + echo "$1: did not declare number of triggers" +fi +#trap "" 0 +#killwatchdog + diff --git a/tests/memdb/trigger b/tests/trigger index 4df6961..147de28 100755 --- a/tests/memdb/trigger +++ b/tests/trigger @@ -1,4 +1,4 @@ #!/bin/sh echo trigger -env +env | egrep -v 'PATH' |