Whamcloud - gitweb
Revert my use of the configure_flags macro in the lustre.spec file and just
[fs/lustre-release.git] / lustre / tests / lfscktest.sh
index 4c9fed0..95f7e55 100755 (executable)
@@ -1,17 +1,18 @@
 #!/bin/bash
 set -vx
-set -e
+#set -e
 
 . ./lfscktest_config.sh
 
+sh llmount.sh || exit 1
+
 #Create mount points on target OST and MDS
 #Create test directory 
-
 mkdir -p $OST_MOUNTPT
 mkdir -p $MDS_MOUNTPT
 mkdir -p $TEST_DIR
 
-export PATH=$E2FSCK_PATH/e2fsck:$PATH
+export PATH=$LFSCK_PATH:`dirname $0`:`dirname $0`/../utils:$PATH
 
 # Create some files on the filesystem
 for i in `seq 0 3`; do
@@ -25,16 +26,14 @@ for i in `seq 0 3`; do
                done
        done
 done
-# Create Files to be modified
 
+# Create Files to be modified
 file_name=${TESTNAME}
-
 for FILE in `seq -f ${TEST_DIR}/${file_name}.%g 0 40`; do
-       dd if=/dev/zero count=1 bs=64k of=$FILE || exit 1
+       dd if=/dev/zero count=1 bs=64K of=$FILE || exit 1
 done
 
 #Create some more files
-
 for i in `seq 21 23`; do
        mkdir -p ${MOUNT}/d$i
        for j in `seq 0 5`; do
@@ -67,13 +66,12 @@ for i in `seq 20 39`; do
        MDS_FILES="$MDS_FILES ${TESTNAME}/${file_name}.$i"
 done
 
-$LCONF --cleanup ${CONFIGXML} || exit 1
-
+sh llmountcleanup.sh || exit 1
 # Remove objects associated with files
 echo "removing objects: $OST_TEST_FILE_OBJIDS"
 for i in $OST_TEST_FILE_OBJIDS; do
        z=`expr $i % 32`
-       $DEBUGFS -w -R "rm O/0/d$z/$i" "$OSTDEV" || exit 1
+       debugfs -w -R "rm O/0/d$z/$i" "$OSTDEV" || exit 1
 done
 
 mount "-o" loop $MDSDEV $MDS_MOUNTPT
@@ -84,25 +82,25 @@ for i in $MDS_FILES; do
 done
 
 #Create EAs on files so objects are referenced twice from different mds files
-for i in `seq 40 59`; do
+for i in `seq 0 19`; do
        touch $MDS_MOUNTPT/ROOT/${TESTNAME}/${TESTNAME}.bad.$i
-       ${GPATH}/copy_attr $MDS_MOUNTPT/ROOT/${TESTNAME}/${TESTNAME}.$i $MDS_MOUNTPT/ROOT/${TESTNAME}/${TESTNAME}.bad.$i || (umount $MDS_MOUNTPT && exit 1) 
-       i=`expr $i + 1`
+       copy_attr $MDS_MOUNTPT/ROOT/${TESTNAME}/${TESTNAME}.$i $MDS_MOUNTPT/ROOT/${TESTNAME}/${TESTNAME}.bad.$i || (umount $MDS_MOUNTPT && exit 1)
+        i=`expr $i + 1`
 done
-       umount $MDS_MOUNTPT 
-       rmdir $MDS_MOUNTPT
-       rmdir $OST_MOUNTPT
+umount $MDS_MOUNTPT 
+rmdir $MDS_MOUNTPT
+rmdir $OST_MOUNTPT
 
 # Run e2fsck to get mds and ost info
 # a return status of 1 indicates e2fsck successfuly fixed problems found
 
-e2fsck -d -f -y --mdsdb $GPATH/mdsdb $MDSDEV 
+e2fsck -d -f -y --mdsdb $GPATH/mdsdb $MDSDEV
 RET=$?
 [ $RET -ne 0 -a $RET -ne 1 ] && exit 1
 i=0
 OSTDB_LIST=""
 while [ $i -lt $NUM_OSTS ]; do
-       e2fsck -d -f -y --mdsdb $GPATH/mdsdb --ostdb $GPATH/ostdb-$i $TMP/ost$i-`hostname`
+       e2fsck -d -f -y --mdsdb $GPATH/mdsdb --ostdb $GPATH/ostdb-$i $TMP/ost`expr $i + 1`-`hostname`
        RET=$?
        [ $RET -ne 0 -a $RET -ne 1 ] && exit 1
        if [ -z "${OSTDB_LIST}" ]; then
@@ -113,11 +111,12 @@ while [ $i -lt $NUM_OSTS ]; do
        i=`expr $i + 1`
 done
 
-#Mount filesystem
-${LCONF} ${CONFIGXML}  || exit 1
+#Remount filesystem
+sh llrmount.sh  || exit 1
 
 lfsck -l --mdsdb $GPATH/mdsdb --ostdb ${OSTDB_LIST} ${MOUNT} || exit 1  
 
 #Cleanup 
 rm $GPATH/mdsdb
 rm $GPATH/ostdb-*
+sh llmountcleanup.sh || exit 1