1#!/bin/bash 2# SPDX-License-Identifier: MIT or GPL-2.0-only 3 4. common/fio_common 5. common/loop_common 6 7echo -e "\trun fio with kill ubq_deamon and delete(NOWAIT) ublk-loop test" 8 9BS=4k 10RW=rw 11JOBS=4 12QUEUES=4 13RT=$TRUNTIME 14LOOPS=4 15URING_COMP=1 16NEED_GET_DATA=1 17RECOVERY=0 18RECOVERY_REISSUE=0 19 20 21ublk_run_delete_test() 22{ 23 for CNT in `seq $LOOPS`; do 24 export T_TYPE_PARAMS="-t loop -q $QUEUES -u $URING_COMP -g $NEED_GET_DATA -r $RECOVERY -i $RECOVERY_REISSUE -f $file" 25 26 DEV=`__create_ublk_dev` 27 echo -e "\trun fio on $DEV(ublk add $T_TYPE_PARAMS) with deleting dev $CNT" 28 __run_fio_libaio $DEV $BS $RW $JOBS $RT > /dev/null 2 >& 1 & 29 sleep 2 30 queue_tid=`__ublk_get_queue_tid $DEV 0` 31 kill -9 $queue_tid 32 RES=`__remove_ublk_dev_return $DEV` 33 if [ $RES -ne 0 ]; then 34 echo -e "\tdelete $DEV failed" 35 ps -eLf | grep ublk 36 (cd /sys/kernel/debug/block/`basename $DEV` && find . -type f -exec grep -aH . {} \;) 37 break 38 fi 39 wait 40 done 41} 42 43file=`_create_loop_image "data" 1G` 44 45RECOVERY=1 46for RECOVERY_REISSUE in `seq 0 1`; do 47 ublk_run_delete_test 48done 49 50_remove_loop_image $file 51