mirror of
https://gitee.com/openharmony/third_party_f2fs-tools
synced 2024-11-30 05:30:55 +00:00
71 lines
1.4 KiB
Bash
71 lines
1.4 KiB
Bash
|
#!/bin/bash
|
||
|
|
||
|
MNT=/mnt/f2fs
|
||
|
DEV=/dev/sdb1
|
||
|
USER_DIR=/home/zeus
|
||
|
F2FS_DIR=$USER_DIR/f2fs_test
|
||
|
|
||
|
check_stop() {
|
||
|
stop=`cat /tmp/stop`
|
||
|
if [ $stop -eq 1 ]; then
|
||
|
exit
|
||
|
fi
|
||
|
}
|
||
|
|
||
|
case $1 in
|
||
|
start)
|
||
|
echo 0 > /tmp/stop
|
||
|
umount /mnt/*
|
||
|
echo 3 > /proc/sys/vm/drop_caches
|
||
|
echo 8 > /proc/sys/kernel/printk
|
||
|
|
||
|
date >> $USER_DIR/por_result
|
||
|
sync
|
||
|
|
||
|
insmod $F2FS_DIR/src/fs/f2fs/f2fs.ko || exit
|
||
|
|
||
|
echo Start checking F2FS without fsync
|
||
|
check_stop
|
||
|
fsck.f2fs $DEV -d 0 || exit
|
||
|
mount -t f2fs -o disable_roll_forward $DEV $MNT || exit
|
||
|
umount $MNT
|
||
|
echo 3 > /proc/sys/vm/drop_caches
|
||
|
|
||
|
echo Start checking F2FS with fsync
|
||
|
check_stop
|
||
|
fsck.f2fs $DEV -d 0 || exit
|
||
|
mount -t f2fs $DEV $MNT || exit
|
||
|
umount $MNT
|
||
|
|
||
|
check_stop
|
||
|
fsck.f2fs $DEV -d 0 || exit
|
||
|
mount -t f2fs $DEV $MNT || exit
|
||
|
|
||
|
count=`cat $USER_DIR/por_time`
|
||
|
if [ $count -eq 20 ]; then
|
||
|
echo Start rm all
|
||
|
time rm -rf $MNT/* || exit
|
||
|
echo 0 > $USER_DIR/por_time
|
||
|
sync
|
||
|
else
|
||
|
echo $((count+1)) > $USER_DIR/por_time
|
||
|
fi
|
||
|
echo 8 > /proc/sys/kernel/printk
|
||
|
echo Start fsstress
|
||
|
date
|
||
|
$F2FS_DIR/stress_test/fsstress/fsstress -z -f link=0 -f mkdir=3 -f mknod=3 -f rmdir=2 -f symlink=3 -f truncate=4 -f write=10 -f creat=10 -f unlink=5 -f rename=5 -f fsync=10 -p 10 -n 10000 -l 0 -d $MNT &
|
||
|
RANDOM=`date '+%s'`
|
||
|
rand=$[($RANDOM % 540) + 60]
|
||
|
echo Start sleep: $rand seconds
|
||
|
sleep $rand
|
||
|
|
||
|
echo Reboot now
|
||
|
check_stop
|
||
|
echo b > /proc/sysrq-trigger
|
||
|
;;
|
||
|
stop)
|
||
|
killall -9 fsstress
|
||
|
echo 1 > /tmp/stop
|
||
|
;;
|
||
|
esac
|