mirror of
https://gitee.com/openharmony/third_party_f2fs-tools
synced 2024-11-26 19:51:32 +00:00
script: add simple test script
This patch adds a script to test sload.f2fs, defrag.f2fs, and resize.f2fs. Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
This commit is contained in:
parent
603f8f9d36
commit
e52321f3eb
137
scripts/verify.sh
Executable file
137
scripts/verify.sh
Executable file
@ -0,0 +1,137 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
IMG=../test.img
|
||||||
|
TMP=/tmp/res
|
||||||
|
XFSTESTS=~/xfstests
|
||||||
|
TESTS="4 5 8 11 16 25 32 55 64"
|
||||||
|
|
||||||
|
TARGET=./testdir
|
||||||
|
MNT=/mnt/resize
|
||||||
|
|
||||||
|
mkdir $TARGET 2>/dev/null
|
||||||
|
mkdir $MNT 2>/dev/null
|
||||||
|
|
||||||
|
umount $TARGET
|
||||||
|
umount $MNT
|
||||||
|
|
||||||
|
_check_out()
|
||||||
|
{
|
||||||
|
if [ $1 -ne 0 ]; then
|
||||||
|
grep ASSERT $TMP
|
||||||
|
echo FAIL RETURN $1
|
||||||
|
exit
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
_get_sec()
|
||||||
|
{
|
||||||
|
echo $(($1*1024*1024*1024/512))
|
||||||
|
}
|
||||||
|
|
||||||
|
_mkfs()
|
||||||
|
{
|
||||||
|
echo "========== Initialize $1 GB ============"
|
||||||
|
mkfs.f2fs $IMG `_get_sec $1` | grep sectors
|
||||||
|
}
|
||||||
|
|
||||||
|
_mount()
|
||||||
|
{
|
||||||
|
echo "========== mount to $1 ================="
|
||||||
|
mount -t f2fs -o loop,discard,inline_data,inline_xattr $IMG $1 2>&1
|
||||||
|
_check_out $?
|
||||||
|
}
|
||||||
|
|
||||||
|
_fsck()
|
||||||
|
{
|
||||||
|
echo "========== fsck.f2fs ==================="
|
||||||
|
fsck.f2fs $IMG -t 2>&1 >$TMP
|
||||||
|
_check_out $?
|
||||||
|
grep FSCK $TMP
|
||||||
|
}
|
||||||
|
|
||||||
|
_fsstress()
|
||||||
|
{
|
||||||
|
echo "========== fsstress $1 ================="
|
||||||
|
$XFSTESTS/ltp/fsstress -x "echo 3 > /proc/sys/vm/drop_caches && sleep 1" -X 1 -r -f fsync=8 -f sync=0 -f write=8 -f dwrite=2 -f truncate=6 -f allocsp=0 -f bulkstat=0 -f bulkstat1=0 -f freesp=0 -f zero=1 -f collapse=1 -f insert=1 -f resvsp=0 -f unresvsp=0 -S t -p 10 -n $2 -d $1 >/dev/null
|
||||||
|
}
|
||||||
|
|
||||||
|
_resize()
|
||||||
|
{
|
||||||
|
echo "========== resize.f2fs $1 GB ==========="
|
||||||
|
resize.f2fs -t `_get_sec $1` $IMG 2>&1 >$TMP
|
||||||
|
_check_out $?
|
||||||
|
_fsck
|
||||||
|
}
|
||||||
|
|
||||||
|
_resize_tests()
|
||||||
|
{
|
||||||
|
for i in $TESTS
|
||||||
|
do
|
||||||
|
if [ $i -ge $1 ]; then
|
||||||
|
_resize $i
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
_sload()
|
||||||
|
{
|
||||||
|
echo "========== sload $1 ===================="
|
||||||
|
sload.f2fs -f $1 $IMG 2>&1
|
||||||
|
_check_out $?
|
||||||
|
}
|
||||||
|
|
||||||
|
from_mount()
|
||||||
|
{
|
||||||
|
echo ""
|
||||||
|
echo " **** $1 GB to $2 GB with $3 *** "
|
||||||
|
_mkfs $1
|
||||||
|
_mount $3
|
||||||
|
_fsstress $3 10000
|
||||||
|
umount $3
|
||||||
|
_fsck
|
||||||
|
_resize_tests $2
|
||||||
|
}
|
||||||
|
|
||||||
|
from_sload()
|
||||||
|
{
|
||||||
|
echo ""
|
||||||
|
echo " **** $1 GB to $2 GB with $3 *** "
|
||||||
|
|
||||||
|
_mkfs $1
|
||||||
|
_sload $3
|
||||||
|
_fsck
|
||||||
|
|
||||||
|
_mount $MNT
|
||||||
|
_fsstress $MNT 10000
|
||||||
|
umount $MNT
|
||||||
|
_fsck
|
||||||
|
|
||||||
|
_resize_tests $2
|
||||||
|
|
||||||
|
_mount $MNT
|
||||||
|
_fsstress $MNT 10000
|
||||||
|
umount $MNT
|
||||||
|
_fsck
|
||||||
|
}
|
||||||
|
|
||||||
|
test_all()
|
||||||
|
{
|
||||||
|
for i in $TESTS
|
||||||
|
do
|
||||||
|
for j in $TESTS
|
||||||
|
do
|
||||||
|
if [ $i -lt $j ]; then
|
||||||
|
$1 $i $j $2
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
test_all from_sload ~/grub
|
||||||
|
|
||||||
|
rm -rf $TARGET/*
|
||||||
|
_fsstress $TARGET 5000
|
||||||
|
test_all from_sload $TARGET
|
||||||
|
rm -rf $TARGET 2>/dev/null
|
||||||
|
|
||||||
|
test_all from_mount $MNT
|
Loading…
Reference in New Issue
Block a user