Blob Blame History Raw
FSCK_OPT=-yf

# use current directory instead of /tmp becase tmpfs doesn't support DIO
rm -f $TMPFILE
TMPFILE=$(mktemp ./tmp-$test_name.XXXXXX)

stat -f $TMPFILE | grep -q "Type: tmpfs"
if [ $? = 0 ]; then
	rm -f $TMPFILE
	echo "$test_name: $test_description: skipped for tmpfs (no O_DIRECT)"
	return 0
fi

$MKE2FS -q -F -o Linux -b 4096 -O mmp $TMPFILE 100 > $test_name.log 2>&1
status=$?
if [ "$status" != 0 ] ; then
	echo "mke2fs -O mmp failed" > $test_name.failed
	echo "$test_name: $test_description: failed"
	return $status
fi

$TUNE2FS -O ^mmp $TMPFILE > $test_name.log 2>&1
status=$?
if [ "$status" != 0 ] ; then
	echo "tune2fs -O ^mmp failed" > $test_name.failed
	echo "$test_name: $test_description: failed"
	return $status
fi

$FSCK $FSCK_OPT $TMPFILE > $test_name.log 2>&1
status=$?
if [ "$status" = 0 ] ; then
	echo "$test_name: $test_description: ok"
	touch $test_name.ok
else
	echo "e2fsck after MMP disable failed" > $test_name.failed
	echo "$test_name: $test_description: failed"
	return $status
fi
rm -f $TMPFILE