From: Christoph Hellwig Date: Thu, 18 Dec 2025 07:30:07 +0000 (+0100) Subject: xfs/521: require a real SCRATCH_RTDEV X-Git-Tag: v2026.01.05~17 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=0d89f8063ece5ece81d44acef2dbd51bc74f8ae5;p=xfstests-dev.git xfs/521: require a real SCRATCH_RTDEV Require a real SCRATCH_RTDEV instead of faking one up using a loop device, as otherwise the options specified in MKFS_OPTIONS might not actually work the configuration. Signed-off-by: Christoph Hellwig Reviewed-by: Darrick J. Wong Signed-off-by: Zorro Lang --- diff --git a/tests/xfs/521 b/tests/xfs/521 index 0da05a55..5cd6649c 100755 --- a/tests/xfs/521 +++ b/tests/xfs/521 @@ -16,34 +16,16 @@ . ./common/preamble _begin_fstest auto quick realtime growfs -# Override the default cleanup function. -_cleanup() -{ - cd / - _scratch_unmount >> $seqres.full 2>&1 - [ -n "$rt_loop_dev" ] && _destroy_loop_device $rt_loop_dev - rm -f $tmp.* $TEST_DIR/$seq.rtvol -} - -# Import common functions. . ./common/filter -# Note that we don't _require_realtime because we synthesize a rt volume -# below. -_require_scratch_nocheck -_require_no_large_scratch_dev - -echo "Create fake rt volume" -truncate -s 400m $TEST_DIR/$seq.rtvol -rt_loop_dev=$(_create_loop_device $TEST_DIR/$seq.rtvol) +_require_realtime +_require_scratch echo "Format and mount 100m rt volume" -export USE_EXTERNAL=yes -export SCRATCH_RTDEV=$rtdev _scratch_mkfs -r size=100m > $seqres.full -_try_scratch_mount || _notrun "Could not mount scratch with synthetic rt volume" +_scratch_mount -# zoned file systems only support zoned size-rounded RT device sizes +# zoned file systems only support zone-size aligned RT device sizes _require_xfs_scratch_non_zoned testdir=$SCRATCH_MNT/test-$seq @@ -58,7 +40,10 @@ echo "Create some files" _pwrite_byte 0x61 0 1m $testdir/original >> $seqres.full echo "Grow fs" -$XFS_GROWFS_PROG $SCRATCH_MNT 2>&1 | _filter_growfs >> $seqres.full +# growfs expects sizes in FSB units +fsbsize=$(_get_block_size $SCRATCH_MNT) +$XFS_GROWFS_PROG -R $((400 * 1024 * 1024 / fsbsize)) $SCRATCH_MNT 2>&1 | \ + _filter_growfs >> $seqres.full _scratch_cycle_mount echo "Recheck 400m rt volume stats" @@ -73,8 +58,6 @@ echo "Check filesystem" _check_scratch_fs _scratch_unmount -_destroy_loop_device $rt_loop_dev -unset rt_loop_dev # success, all done status=0 diff --git a/tests/xfs/521.out b/tests/xfs/521.out index 007ab92c..afd18bb0 100644 --- a/tests/xfs/521.out +++ b/tests/xfs/521.out @@ -1,5 +1,4 @@ QA output created by 521 -Create fake rt volume Format and mount 100m rt volume Check rt volume stats Create some files