ONLY=${ONLY:-"$*"}
# bug number for skipped tests:
# skipped test:
+# - 48a is obsolete due to new_kernel_api
# - 51b 51c depend on used kernel
# more than only LOV EAs
# - 65h (default stripe inheritance) is not implemented for LMV
# configurations. Will be done in second phase of collibri.
+# - 71 mmap still not updated on HEAD
-ALWAYS_EXCEPT=${ALWAYS_EXCEPT:-"51b 51c 65h"}
+ALWAYS_EXCEPT=${ALWAYS_EXCEPT:-"48a 51b 51c 65h 71"}
# UPDATE THE COMMENT ABOVE WITH BUG NUMBERS WHEN CHANGING ALWAYS_EXCEPT!
[ "$ALWAYS_EXCEPT$EXCEPT" ] && echo "Skipping tests: $ALWAYS_EXCEPT $EXCEPT"
export SECURITY=${SECURITY:-"null"}
TMP=${TMP:-/tmp}
-FSTYPE=${FSTYPE:-ext3}
+DEF_FSTYPE=`test "x$(uname -r | grep -o '2.6')" = "x2.6" && echo "ldiskfs" || echo "ext3"`
+FSTYPE=${FSTYPE:-$DEF_FSTYPE}
+#used only if FSTYPE == smfs, otherwise ignored by lconf
+MDS_BACKFSTYPE=${MDS_BACKFSTYPE:-$DEF_FSTYPE}
+OST_BACKFSTYPE=${OST_BACKFSTYPE:-$DEF_FSTYPE}
CHECKSTAT=${CHECKSTAT:-"checkstat -v"}
CREATETEST=${CREATETEST:-createtest}
echo PASS $@
}
-MOUNT="`mount | awk '/^'$NAME' .* lustre_lite / { print $3 }'`"
+mounted_lustre_filesystems() {
+ awk '($3 ~ "lustre") { print $2 }' /proc/mounts
+}
+MOUNT="`mounted_lustre_filesystems`"
if [ -z "$MOUNT" ]; then
sh llmount.sh
- MOUNT="`mount | awk '/^'$NAME' .* lustre_lite / { print $3 }'`"
+ MOUNT="`mounted_lustre_filesystems`"
[ -z "$MOUNT" ] && error "NAME=$NAME not mounted"
I_MOUNTED=yes
fi
$CHECKSTAT -t dir $DIR/R15a/b/c || error "$DIR/R15a/b/c missing"
}
run_test 24s "mkdir .../R15a/b/c; rename .../R15a .../R15a/b/c ="
+
test_24t() {
mkdir $DIR/R16a $DIR/R16a/b $DIR/R16a/b/c
mrename $DIR/R16a/b/c $DIR/R16a && error "rename to sub-subdir worked!"
}
run_test 24t "mkdir .../R16a/b/c; rename .../R16a/b/c .../R16a ="
+test_24u() {
+ rm -rf /tmp/R17*
+ mkdir $DIR/R17_dir
+ echo "aaa" > $DIR/R17_file
+ mv $DIR/R17_dir /tmp/
+ $CHECKSTAT -t dir /tmp/R17_dir || error "move dir out 1"
+ $CHECKSTAT -a $DIR/R17_dir || error "move dir out 2"
+ mv $DIR/R17_file /tmp/
+ $CHECKSTAT -t file /tmp/R17_file || error "move file out 1"
+ $CHECKSTAT -a $DIR/R17_file || error "move file out 2"
+
+ mv /tmp/R17_dir $DIR/
+ $CHECKSTAT -t dir $DIR/R17_dir || error "move dir in 3"
+ $CHECKSTAT -a /tmp/R17_dir || error "move dir in 4"
+ mv /tmp/R17_file $DIR/
+ $CHECKSTAT -t file $DIR/R17_file || error "move file in 3"
+ $CHECKSTAT -a /tmp/R17_file || error "move file in 4"
+}
+run_test 24u "rename across lustre file system"
+
test_25a() {
echo '== symlink sanity ============================================='
mkdir $DIR/d25
test "x$FSTYPE" = "x$(grep $FSTYPE /proc/filesystems)" && return 0
modprobe $FSTYPE > /dev/null 2>&1
test "x$FSTYPE" = "x$(grep $FSTYPE /proc/filesystems)" && return 0
- test "x$(uname -r | grep -o "2.6")" = "x2.6" && MODEXT="ko" || MODEXT="o"
+ test "x$(uname -r | grep -o '2.6')" = "x2.6" && MODEXT="ko" || MODEXT="o"
insmod ../$FSTYPE/$FSTYPE.$MODEXT > /dev/null 2>&1
test "x$FSTYPE" = "x$(grep $FSTYPE /proc/filesystems)" && return 0
return 1
rm -rf $DIR/d55
mkdir $DIR/d55
check_fstype && echo "can't find fs $FSTYPE, skipping test 55" && return
- mount -t $FSTYPE -o loop,iopen $EXT2_DEV $DIR/d55 || error "mounting"
+ if [ "$FSTYPE" == "smfs" ] ; then
+ mount -t $MDS_BACKFSTYPE -o loop,iopen $EXT2_DEV $DIR/d55 || error "mounting"
+ else
+ mount -t $FSTYPE -o loop,iopen $EXT2_DEV $DIR/d55 || error "mounting"
+ fi
touch $DIR/d55/foo
$IOPENTEST1 $DIR/d55/foo $DIR/d55 || error "running $IOPENTEST1"
$IOPENTEST2 $DIR/d55 || error "running $IOPENTEST2"