diff --git a/tests/block/044 b/tests/block/044 index 8baf9fa..d31aa4c 100755 --- a/tests/block/044 +++ b/tests/block/044 @@ -11,7 +11,8 @@ DESCRIPTION="basic block error injection test" QUICK=1 requires() -{ +{ + _have_kernel_option BLK_ERROR_INJECTION _have_loadable_scsi_debug _have_program xfs_io } @@ -23,14 +24,6 @@ _test_load_unload() if ! _init_scsi_debug dev_size_mb=500; then return 1 fi - - local dev=${SCSI_DEBUG_DEVICES[0]} - local debugfs_file="/sys/kernel/debug/block/$dev/error_injection" - if [[ ! -f "${debugfs_file}" ]]; then - SKIP_REASONS+=("error injection not supported") - _exit_scsi_debug - return 1 - fi echo "Testing unload without rules" _exit_scsi_debug } @@ -45,16 +38,16 @@ _test_rules() local debugfs_file="/sys/kernel/debug/block/$dev/error_injection" echo "Testing valid rules" - echo "add,op=WRITE,status=RESOURCE,start=0,nr_sectors=8" > $debugfs_file - echo "add,op=READ,status=IOERR,start=16,nr_sectors=8" > $debugfs_file - xfs_io -d -c 'pwrite -q 0 4096' /dev/$dev - xfs_io -d -c 'pread -q 0 4096' /dev/$dev - xfs_io -d -c 'pwrite -q 4096 4096' /dev/$dev - xfs_io -d -c 'pread -q 8192 8192' /dev/$dev + echo "add,op=WRITE,status=RESOURCE,start=0,nr_sectors=8" > "$debugfs_file" + echo "add,op=READ,status=IOERR,start=16,nr_sectors=8" > "$debugfs_file" + xfs_io -d -c 'pwrite -q 0 4096' /dev/"$dev" + xfs_io -d -c 'pread -q 0 4096' /dev/"$dev" + xfs_io -d -c 'pwrite -q 4096 4096' /dev/"$dev" + xfs_io -d -c 'pread -q 8192 8192' /dev/"$dev" echo "Testing invalid rules" - echo "op=READ,status=IOERR" > $debugfs_file - echo "add,op=READ,status=EIO,start=32" > $debugfs_file + echo "op=READ,status=IOERR" > "$debugfs_file" + echo "add,op=READ,status=EIO,start=32" > "$debugfs_file" _exit_scsi_debug } @@ -62,8 +55,6 @@ test() { echo "Running ${TEST_NAME}" - local ret - _test_load_unload _test_rules