Whamcloud - gitweb
b=3031
[fs/lustre-release.git] / lustre / tests / run-llog.sh
index 64d6403..cbe3d2a 100644 (file)
@@ -1,16 +1,35 @@
 #!/bin/bash
-insmod ../obdclass/llog_test.o
-../utils/lctl modules > /r/tmp/ogdb-localhost.localdomain
+PATH=`dirname $0`:`dirname $0`/../utils:$PATH
+TMP=${TMP:-/tmp}
+
+MDS=`find /proc/fs/lustre/mds/* -type d | head -n1 | sed 's/.*\///'`
+[ -z "$MDS" ] && echo "no MDS available, skipping llog test" && exit 0
+
+test "x$(uname -r | grep -o "2.6")" = "x2.6" && MODEXT=ko || MODEXT=o
+
+insmod ../obdclass/llog_test.$MODEXT || exit 1
+lctl modules > $TMP/ogdb-`hostname`
+
+# take care of UML developers
+[ -f /r/$TMP/ogdb-`hostname` ] && 
+    cp -f $TMP/ogdb-`hostname` /r/$TMP/ogdb-`hostname`
 echo "NOW reload debugging syms.."
 
-# Using ignore_errors will allow lctl to cleanup even if the test
-# fails.
-../utils/lctl <<EOF
-ignore_errors
+RC=0
+lctl <<EOT || RC=2
 newdev
 attach llog_test llt_name llt_uuid
-setup mds1
+setup $MDS
+EOT
+
+# Using ignore_errors will allow lctl to cleanup even if the test fails.
+lctl <<EOC
+cfg_device llt_name
+ignore_errors
 cleanup
 detach
-EOF
-rmmod llog_test
+EOC
+rmmod llog_test || RC2=3
+[ $RC -eq 0 -a "$RC2" ] && RC=$RC2
+
+exit $RC