As of xfsprogs commit 6e0ed3d1 ("mkfs: stop allowing tiny filesystems") attempts to create XFS filesystems sized under 300M fail. Lacking MIN_FSSIZE configuration, failure of _scratch_mkfs_sized() in generic/027 doesn't halt the test, leading _scratch_mount() to mount any previously created (full-size) filesystem. As a result create_file() may loop near-endlessly awaiting ENOSPC. Use a 300M sized filesystem to support XFS' limit, and explicitly check for _scratch_mkfs_sized() failure to avoid endless loops if the limit changes again in future. Signed-off-by: David Disseldorp <ddiss@xxxxxxx> --- tests/generic/027 | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/tests/generic/027 b/tests/generic/027 index 47f1981d..4f8cf6d8 100755 --- a/tests/generic/027 +++ b/tests/generic/027 @@ -35,13 +35,14 @@ _require_scratch echo "Silence is golden" -_scratch_mkfs_sized $((256 * 1024 * 1024)) >>$seqres.full 2>&1 +_scratch_mkfs_sized $((300 * 1024 * 1024)) >>$seqres.full 2>&1 \ + || _fail "_scratch_mkfs_sized failed" _scratch_mount echo "Reserve 2M space" >>$seqres.full $XFS_IO_PROG -f -c "pwrite 0 2m" $SCRATCH_MNT/testfile >>$seqres.full 2>&1 echo "Fulfill the fs" >>$seqres.full -$XFS_IO_PROG -f -c "pwrite 0 254m" $SCRATCH_MNT/bigfile >>$seqres.full 2>&1 +$XFS_IO_PROG -f -c "pwrite 0 298m" $SCRATCH_MNT/bigfile >>$seqres.full 2>&1 echo "Remove reserved file" >>$seqres.full rm -f $SCRATCH_MNT/testfile -- 2.35.3