Message ID | 20210423112634.6067-3-johannes.thumshirn@wdc.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | fstests: first few support patches for zoned btrfs | expand |
On Fri, Apr 23, 2021 at 08:26:32PM +0900, Johannes Thumshirn wrote: > Some test cases for btrfs require the scratch device to support discard. > Check if the scratch device does support discard before trying to execute > the test. > > Signed-off-by: Johannes Thumshirn <johannes.thumshirn@wdc.com> > --- > common/rc | 8 ++++++++ > tests/btrfs/116 | 1 + > tests/btrfs/156 | 1 + > 3 files changed, 10 insertions(+) > > diff --git a/common/rc b/common/rc > index 11ff7635700b..76a7265e23ba 100644 > --- a/common/rc > +++ b/common/rc > @@ -3587,6 +3587,14 @@ _require_batched_discard() > $FSTRIM_PROG $1 > /dev/null 2>&1 || _notrun "FITRIM not supported on $1" > } > > +_require_scratch_discard() > +{ > + local sdev="$(_short_dev $SCRATCH_DEV)" > + local discard=$(cat /sys/block/$sdev/queue/discard_granularity) > + > + [ $discard -gt 0 ] || _notrun "discard not supported" > +} > + > _require_dumpe2fs() > { > if [ -z "$DUMPE2FS_PROG" ]; then > diff --git a/tests/btrfs/116 b/tests/btrfs/116 > index 3ed097eccf03..f4db439caef8 100755 > --- a/tests/btrfs/116 > +++ b/tests/btrfs/116 > @@ -29,6 +29,7 @@ _cleanup() > # real QA test starts here > _supported_fs btrfs > _require_scratch > +_require_scratch_discard > > rm -f $seqres.full > > diff --git a/tests/btrfs/156 b/tests/btrfs/156 > index 89c80e7161e2..56206d99c801 100755 > --- a/tests/btrfs/156 > +++ b/tests/btrfs/156 > @@ -42,6 +42,7 @@ rm -f $seqres.full > _supported_fs btrfs > _require_scratch > _require_fstrim > +_require_scratch_discard These two tests already have _require_batched_discard, which will make sure discard is supported by the device, by actually doing fstrim on $SCRATCH_MNT. I think that should do the work? Thanks, Eryu > > # 1024fs size > fs_size=$((1024 * 1024 * 1024)) > -- > 2.30.0
diff --git a/common/rc b/common/rc index 11ff7635700b..76a7265e23ba 100644 --- a/common/rc +++ b/common/rc @@ -3587,6 +3587,14 @@ _require_batched_discard() $FSTRIM_PROG $1 > /dev/null 2>&1 || _notrun "FITRIM not supported on $1" } +_require_scratch_discard() +{ + local sdev="$(_short_dev $SCRATCH_DEV)" + local discard=$(cat /sys/block/$sdev/queue/discard_granularity) + + [ $discard -gt 0 ] || _notrun "discard not supported" +} + _require_dumpe2fs() { if [ -z "$DUMPE2FS_PROG" ]; then diff --git a/tests/btrfs/116 b/tests/btrfs/116 index 3ed097eccf03..f4db439caef8 100755 --- a/tests/btrfs/116 +++ b/tests/btrfs/116 @@ -29,6 +29,7 @@ _cleanup() # real QA test starts here _supported_fs btrfs _require_scratch +_require_scratch_discard rm -f $seqres.full diff --git a/tests/btrfs/156 b/tests/btrfs/156 index 89c80e7161e2..56206d99c801 100755 --- a/tests/btrfs/156 +++ b/tests/btrfs/156 @@ -42,6 +42,7 @@ rm -f $seqres.full _supported_fs btrfs _require_scratch _require_fstrim +_require_scratch_discard # 1024fs size fs_size=$((1024 * 1024 * 1024))
Some test cases for btrfs require the scratch device to support discard. Check if the scratch device does support discard before trying to execute the test. Signed-off-by: Johannes Thumshirn <johannes.thumshirn@wdc.com> --- common/rc | 8 ++++++++ tests/btrfs/116 | 1 + tests/btrfs/156 | 1 + 3 files changed, 10 insertions(+)