112 lines
2.7 KiB
Bash
Executable File
112 lines
2.7 KiB
Bash
Executable File
#!/bin/sh
|
|
# This script should be run to execute the filesystem tests on SCSI vitual devices.
|
|
# 10/21/03 mridge@us.ibm.com Initial creation of testcases
|
|
#
|
|
#
|
|
|
|
cd `dirname $0`
|
|
export LTPROOT=${PWD}
|
|
echo $LTPROOT | grep testscripts > /dev/null 2>&1
|
|
if [ $? -eq 0 ]; then
|
|
cd ..
|
|
export LTPROOT=${PWD}
|
|
fi
|
|
|
|
export TMPBASE="/tmp"
|
|
|
|
|
|
usage()
|
|
{
|
|
cat <<-END >&2
|
|
usage: ${0##*/} [ -a part1 ] [ -b part2 ] [ -k Kernel Path - fully qualified kernel path ]
|
|
defaults:
|
|
|
|
There are no defaults, all items MUST be passed
|
|
|
|
example: ${0##*/} -a sda -b sdb -k /usr/src/linux
|
|
|
|
- These tests must be run after ssi_debug has been configured and built as a module so it can be loaded with
|
|
the correct parameters.
|
|
|
|
- These operations are destructive so do NOT point the tests to partitions where the data shouldn't be overwritten.
|
|
Once these tests are started all data in the partitions you point to will be destroyed.
|
|
|
|
END
|
|
exit
|
|
}
|
|
|
|
while getopts :a:b:c:k: arg
|
|
do case $arg in
|
|
a) part1=$OPTARG;;
|
|
b) part2=$OPTARG;;
|
|
c) part3=$OPTARG;;
|
|
k) kernpath=$OPTARG;;
|
|
|
|
\?) echo "************** Help Info: ********************"
|
|
usage;;
|
|
esac
|
|
done
|
|
|
|
if [ ! -n "$part1" ]; then
|
|
echo "Missing 1st partition. You must pass 2 partitions for testing"
|
|
usage;
|
|
exit
|
|
fi
|
|
|
|
if [ ! -n "$part2" ]; then
|
|
echo "Missing 2nd partition. You must pass 2 partitions for testing"
|
|
usage;
|
|
exit
|
|
fi
|
|
|
|
if [ ! -n "$part3" ]; then
|
|
echo "Missing 3rd partition. You must pass 3 partitions for testing"
|
|
usage;
|
|
exit
|
|
fi
|
|
|
|
if [ ! -n "$kernpath" ]; then
|
|
echo "Missing kernel path. You must pass kernel path for testing"
|
|
usage;
|
|
exit
|
|
fi
|
|
|
|
export PATH="${PATH}:${LTPROOT}/testcases/bin"
|
|
|
|
|
|
mkdir /test >/dev/null 2>&1
|
|
mkdir /test/growfiles >/dev/null 2>&1
|
|
mkdir /test/growfiles/scsi >/dev/null 2>&1
|
|
mkdir /test/growfiles/scsi/ext2 >/dev/null 2>&1
|
|
mkdir /test/growfiles/scsi/ext3 >/dev/null 2>&1
|
|
mkdir /test/growfiles/scsi/reiser >/dev/null 2>&1
|
|
|
|
|
|
mkfs -V -t ext2 /dev/$part1 <yesenter.txt
|
|
mkfs -V -t ext3 /dev/$part2 <yesenter.txt
|
|
mkreiserfs -f /dev/$part3 <yesenter.txt
|
|
|
|
|
|
mount -v -t ext2 /dev/$part1 /test/growfiles/scsi/ext2
|
|
mount -v -t ext3 /dev/$part2 /test/growfiles/scsi/ext3
|
|
mount -v /dev/$part3 /test/growfiles/scsi/reiser
|
|
|
|
cd $kernpath/drivers/scsi
|
|
modprobe scsi_debug max_luns=2 num_tgts=7 add_host=10
|
|
cd ${LTPROOT}
|
|
|
|
echo "************ Running tests "
|
|
sort -R ${LTPROOT}/runtest/scsi.part1 -o ${TMPBASE}/scsi.part1
|
|
|
|
${LTPROOT}/pan/pan -e -S -a scsipart1 -n scsipart1 -l scsilogfile -f ${TMPBASE}/scsi.part1 &
|
|
|
|
wait $!
|
|
|
|
umount -v /dev/$part1
|
|
umount -v /dev/$part2
|
|
umount -v /dev/$part3
|
|
rmmod scsi_debug
|
|
|
|
|
|
|