common/fuzzy: if the fuzz verb is random, keep fuzzing until we get a new value
[xfstests-dev.git] / common / dmerror
index 5ad999438f402ffb1e5dec1e83aa945de974f67b..238baa213b1f09cdc4719247be5d6e7fd309ab29 100644 (file)
@@ -23,32 +23,32 @@ if [ $? -eq 0 ]; then
        _notrun "Cannot run tests with DAX on dmerror devices"
 fi
 
-_dmerror_init()
+_dmerror_setup()
 {
        local dm_backing_dev=$SCRATCH_DEV
 
-       $DMSETUP_PROG remove error-test > /dev/null 2>&1
-
        local blk_dev_size=`blockdev --getsz $dm_backing_dev`
 
        DMERROR_DEV='/dev/mapper/error-test'
 
        DMLINEAR_TABLE="0 $blk_dev_size linear $dm_backing_dev 0"
 
-       $DMSETUP_PROG create error-test --table "$DMLINEAR_TABLE" || \
-               _fatal "failed to create dm linear device"
-
        DMERROR_TABLE="0 $blk_dev_size error $dm_backing_dev 0"
 }
 
-_dmerror_mount_options()
+_dmerror_init()
 {
-       echo `_common_dev_mount_options $*` $DMERROR_DEV $SCRATCH_MNT
+       _dmerror_setup
+       $DMSETUP_PROG remove error-test > /dev/null 2>&1
+       $DMSETUP_PROG create error-test --table "$DMLINEAR_TABLE" || \
+               _fatal "failed to create dm linear device"
 }
 
 _dmerror_mount()
 {
-       _mount -t $FSTYP `_dmerror_mount_options $*`
+       _scratch_options mount
+       $MOUNT_PROG -t $FSTYP `_common_dev_mount_options $*` $SCRATCH_OPTIONS \
+               $DMERROR_DEV $SCRATCH_MNT
 }
 
 _dmerror_unmount()