POSIX_DIR=${POSIX_DIR:-"$LUSTRE/tests/posix"}
POSIX_SRC=${POSIX_SRC:-"/usr/src/posix"}
+BASELINE_FS=${BASELINE_FS:-"ext4"}
+
+# SLES does not support read-write access to an ext4 file system by default
+[[ -e /etc/SuSE-release ]] && BASELINE_FS=ext3
cleanup_loop_dev() {
local mnt=$1
}
setup_loop_dev() {
- local mnt=$1
- local dev=$2
- local file=$3
- local rc=0
-
- echo "Make a loop file system with $file on $dev"
- dd if=/dev/zero of=$file bs=1024k count=500 > /dev/null
- if ! losetup $dev $file; then
- rc=$?
- echo "can't set up $dev for $file"
- return $rc
- fi
- if ! mkfs.ext4 $dev; then
- rc=$?
- echo "mkfs.ext4 on $dev failed"
- return $rc
- fi
- mkdir -p ${mnt}
- if ! mount -t ext4 $dev $mnt; then
- rc=$?
- echo "mount ext4 failed"
- return $rc
- fi
- echo
- return $rc
+ local mnt=$1
+ local dev=$2
+ local file=$3
+ local rc=0
+
+ echo "Make a loop file system with $file on $dev"
+ dd if=/dev/zero of=$file bs=1024k count=500 > /dev/null
+ if ! losetup $dev $file; then
+ rc=$?
+ echo "can't set up $dev for $file"
+ return $rc
+ fi
+ if ! eval mkfs.$BASELINE_FS $dev; then
+ rc=$?
+ echo "mkfs.$BASELINE_FS on $dev failed"
+ return $rc
+ fi
+ mkdir -p $mnt
+ if ! mount -t $BASELINE_FS $dev $mnt; then
+ rc=$?
+ echo "mount $BASELINE_FS failed"
+ return $rc
+ fi
+ echo
+ return $rc
}
test_1() {
- local allnodes="$(comma_list $(nodes_list))"
- local tfile="$TMP/ext4-file"
- local mntpnt=$POSIX_SRC/ext4
- local loopbase
- local loopdev
- local rc=0
+ local allnodes="$(comma_list $(nodes_list))"
+ local tfile="$TMP/$BASELINE_FS-file"
+ local mntpnt=$POSIX_SRC/$BASELINE_FS
+ local loopbase
+ local loopdev
+ local rc=0
# We start at loop1 because posix build uses loop0
[ -b /dev/loop/1 ] && loopbase=/dev/loop/
cleanup_loop_dev "$POSIX_SRC"
cleanup_loop_dev "$mntpnt" "$loopdev" "$tfile"
}
-run_test 1 "build, install, run posix on ext4 and lustre, then compare"
+run_test 1 "install, build, run posix on $BASELINE_FS and lustre, then compare"
complete $SECONDS
check_and_cleanup_lustre