All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v3 0/4] tweaks for denying tiny xfs
@ 2022-08-30  4:44 Murphy Zhou
  2022-08-30  4:44 ` [PATCH v3 1/4] tests: increase fs size for mkfs Murphy Zhou
                   ` (3 more replies)
  0 siblings, 4 replies; 20+ messages in thread
From: Murphy Zhou @ 2022-08-30  4:44 UTC (permalink / raw)
  To: fstests; +Cc: linux-xfs

Since this xfsprogs commit:
  6e0ed3d19c54 mkfs: stop allowing tiny filesystems
xfs refuses filesystem size less then 300m, log size less then 64m,
and filesystems with single AG.

And with this xfsprogs commit
  1b580a773 mkfs: don't let internal logs bump the root dir inode chunk to AG 1
part of xfs/144 is removed as it is not allowed.

v3:
	Fix more fs size and log size limitation;
	Fix more single AG tests;
	Fix xfs/144;
	Tested group all excluding some testcases from dangerous_fuzzers group
v2:
	Fix more about 300m limit;
	Fix about log size larger then 64m;
	Remove xfs/202

Murphy Zhou (4):
  tests: increase fs size for mkfs
  tests: increase xfs log size
  tests/xfs: remove single-AG options
  xfs/144: remove testing root dir inode in AG 1

 common/config         |    2 +-
 common/log            |    8 +-
 common/xfs            |    6 +-
 tests/generic/015     |    2 +-
 tests/generic/027     |    2 +-
 tests/generic/042     |    3 +
 tests/generic/054.out | 1410 -----------------------------------------
 tests/generic/055.out |  126 ----
 tests/generic/077     |    2 +-
 tests/generic/081     |    6 +-
 tests/generic/083     |    2 +-
 tests/generic/085     |    2 +-
 tests/generic/108     |    4 +-
 tests/generic/204     |    2 +-
 tests/generic/226     |    2 +-
 tests/generic/250     |    2 +-
 tests/generic/252     |    2 +-
 tests/generic/371     |    2 +-
 tests/generic/387     |    2 +-
 tests/generic/416     |    2 +-
 tests/generic/416.out |    2 +-
 tests/generic/427     |    2 +-
 tests/generic/449     |    2 +-
 tests/generic/455     |    2 +-
 tests/generic/457     |    2 +-
 tests/generic/482     |    2 +-
 tests/generic/511     |    2 +-
 tests/generic/520     |    4 +-
 tests/generic/536     |    2 +-
 tests/generic/619     |    2 +-
 tests/generic/626     |    2 +-
 tests/xfs/002         |    2 +-
 tests/xfs/015         |    2 +-
 tests/xfs/041         |    8 +-
 tests/xfs/041.out     |   10 +-
 tests/xfs/042         |    2 +-
 tests/xfs/049         |    2 +-
 tests/xfs/073         |    2 +-
 tests/xfs/076         |    2 +-
 tests/xfs/078         |    6 +-
 tests/xfs/078.out     |   23 +-
 tests/xfs/104         |    6 +-
 tests/xfs/104.out     |   30 -
 tests/xfs/107         |    4 +-
 tests/xfs/118         |    4 +-
 tests/xfs/144         |   10 +-
 tests/xfs/148         |    2 +-
 tests/xfs/149         |   12 +-
 tests/xfs/168         |    2 +-
 tests/xfs/170         |   10 +-
 tests/xfs/170.out     |    8 +-
 tests/xfs/171         |   10 +-
 tests/xfs/171.out     |    8 +-
 tests/xfs/172         |    4 +-
 tests/xfs/172.out     |    4 +-
 tests/xfs/173         |   10 +-
 tests/xfs/173.out     |    8 +-
 tests/xfs/174         |    4 +-
 tests/xfs/174.out     |    4 +-
 tests/xfs/176         |    2 +-
 tests/xfs/179         |    2 +-
 tests/xfs/202         |   40 --
 tests/xfs/202.out     |   29 -
 tests/xfs/205         |    2 +-
 tests/xfs/206         |    2 +-
 tests/xfs/227         |    2 +-
 tests/xfs/233         |    2 +-
 tests/xfs/250         |    6 +-
 tests/xfs/259         |    2 +-
 tests/xfs/279         |    6 +-
 tests/xfs/289         |   22 +-
 tests/xfs/291         |    4 +-
 tests/xfs/306         |    2 +-
 tests/xfs/445         |    2 +-
 tests/xfs/514         |    2 +-
 tests/xfs/520         |    2 +-
 76 files changed, 151 insertions(+), 1790 deletions(-)
 delete mode 100755 tests/xfs/202
 delete mode 100644 tests/xfs/202.out

-- 
2.31.1


^ permalink raw reply	[flat|nested] 20+ messages in thread

* [PATCH v3 1/4] tests: increase fs size for mkfs
  2022-08-30  4:44 [PATCH v3 0/4] tweaks for denying tiny xfs Murphy Zhou
@ 2022-08-30  4:44 ` Murphy Zhou
  2022-08-30  7:36   ` Zorro Lang
  2022-08-30  4:44 ` [PATCH v3 2/4] tests: increase xfs log size Murphy Zhou
                   ` (2 subsequent siblings)
  3 siblings, 1 reply; 20+ messages in thread
From: Murphy Zhou @ 2022-08-30  4:44 UTC (permalink / raw)
  To: fstests; +Cc: linux-xfs

Since this xfsprogs commit:
	6e0ed3d19c54 mkfs: stop allowing tiny filesystems
XFS requires filesystem size bigger then 300m.

Increase thoese numbers to 512M at least. There is no special
reason for the magic number 512, just double it from original
256M and being reasonable small.

Signed-off-by: Murphy Zhou <jencce.kernel@gmail.com>
---
 common/config         |  2 +-
 common/xfs            |  2 +-
 tests/generic/015     |  2 +-
 tests/generic/027     |  2 +-
 tests/generic/042     |  3 +++
 tests/generic/077     |  2 +-
 tests/generic/081     |  6 +++---
 tests/generic/083     |  2 +-
 tests/generic/085     |  2 +-
 tests/generic/108     |  4 ++--
 tests/generic/204     |  2 +-
 tests/generic/226     |  2 +-
 tests/generic/250     |  2 +-
 tests/generic/252     |  2 +-
 tests/generic/371     |  2 +-
 tests/generic/387     |  2 +-
 tests/generic/416     |  2 +-
 tests/generic/416.out |  2 +-
 tests/generic/427     |  2 +-
 tests/generic/449     |  2 +-
 tests/generic/455     |  2 +-
 tests/generic/457     |  2 +-
 tests/generic/482     |  2 +-
 tests/generic/511     |  2 +-
 tests/generic/520     |  4 ++--
 tests/generic/536     |  2 +-
 tests/generic/619     |  2 +-
 tests/generic/626     |  2 +-
 tests/xfs/002         |  2 +-
 tests/xfs/015         |  2 +-
 tests/xfs/041         |  8 ++++----
 tests/xfs/041.out     | 10 +++++-----
 tests/xfs/042         |  2 +-
 tests/xfs/049         |  2 +-
 tests/xfs/073         |  2 +-
 tests/xfs/076         |  2 +-
 tests/xfs/078         |  6 +++---
 tests/xfs/078.out     | 23 +++++++++++------------
 tests/xfs/104         |  6 +++---
 tests/xfs/104.out     | 30 ------------------------------
 tests/xfs/107         |  4 ++--
 tests/xfs/118         |  4 ++--
 tests/xfs/148         |  2 +-
 tests/xfs/149         | 12 ++++++------
 tests/xfs/168         |  2 +-
 tests/xfs/170         | 10 +++++-----
 tests/xfs/170.out     |  8 ++++----
 tests/xfs/174         |  4 ++--
 tests/xfs/174.out     |  4 ++--
 tests/xfs/176         |  2 +-
 tests/xfs/205         |  2 +-
 tests/xfs/227         |  2 +-
 tests/xfs/233         |  2 +-
 tests/xfs/279         |  6 +++---
 tests/xfs/289         | 22 +++++++++++-----------
 tests/xfs/291         |  4 ++--
 tests/xfs/306         |  2 +-
 tests/xfs/514         |  2 +-
 tests/xfs/520         |  2 +-
 59 files changed, 114 insertions(+), 142 deletions(-)

diff --git a/common/config b/common/config
index c30eec6d..45b7650b 100644
--- a/common/config
+++ b/common/config
@@ -325,7 +325,7 @@ fi
 if [ "$FSTYP" == "xfs" ]; then
 	XFS_MKFS_HAS_NO_META_SUPPORT=""
 	touch /tmp/crc_check.img
-	$MKFS_XFS_PROG -N -d file,name=/tmp/crc_check.img,size=32m -m crc=0 \
+	$MKFS_XFS_PROG -N -d file,name=/tmp/crc_check.img,size=512m -m crc=0 \
 		>/dev/null 2>&1;
 	if [ $? -ne 0 ]; then
 		XFS_MKFS_HAS_NO_META_SUPPORT=true
diff --git a/common/xfs b/common/xfs
index 9f84dffb..efabb0ad 100644
--- a/common/xfs
+++ b/common/xfs
@@ -1176,7 +1176,7 @@ _require_xfs_copy()
 	# xfs_copy on v5 filesystems do not require the "-d" option if xfs_db
 	# can change the UUID on v5 filesystems
 	touch /tmp/$$.img
-	$MKFS_XFS_PROG -d file,name=/tmp/$$.img,size=64m >/dev/null 2>&1
+	$MKFS_XFS_PROG -d file,name=/tmp/$$.img,size=512m >/dev/null 2>&1
 
 	# xfs_db will return 0 even if it can't generate a new uuid, so
 	# check the output to make sure if it can change UUID of V5 xfs
diff --git a/tests/generic/015 b/tests/generic/015
index 10423a29..f6804897 100755
--- a/tests/generic/015
+++ b/tests/generic/015
@@ -31,7 +31,7 @@ _require_no_large_scratch_dev
 
 # btrfs needs at least 256MB (with upward round off) to create a non-mixed mode
 # fs. Ref: btrfs-progs: btrfs_min_dev_size()
-_scratch_mkfs_sized $((256 * 1024 * 1024)) >> $seqres.full 2>&1 \
+_scratch_mkfs_sized $((512 * 1024 * 1024)) >> $seqres.full 2>&1 \
     || _fail "mkfs failed"
 _scratch_mount
 out=$SCRATCH_MNT/fillup.$$
diff --git a/tests/generic/027 b/tests/generic/027
index 47f1981d..ad8175c1 100755
--- a/tests/generic/027
+++ b/tests/generic/027
@@ -35,7 +35,7 @@ _require_scratch
 
 echo "Silence is golden"
 
-_scratch_mkfs_sized $((256 * 1024 * 1024)) >>$seqres.full 2>&1
+_scratch_mkfs_sized $((512 * 1024 * 1024)) >>$seqres.full 2>&1
 _scratch_mount
 
 echo "Reserve 2M space" >>$seqres.full
diff --git a/tests/generic/042 b/tests/generic/042
index dbc65e33..54f883cd 100755
--- a/tests/generic/042
+++ b/tests/generic/042
@@ -32,8 +32,11 @@ _crashtest()
 	# f2fs-utils 1.9.0 needs at least 38 MB space for f2fs image. However,
 	# f2fs-utils 1.14.0 needs at least 52 MB. Not sure if it will change
 	# again. So just set it 128M.
+	# xfsprogs 5.19.0 requires xfs size larger then 300m.
 	if [ $FSTYP == "f2fs" ]; then
 		size=128M
+	elif [ $FSTYP == "xfs" ]; then
+		size=512M
 	fi
 
 	# Create an fs on a small, initialized image. The pattern is written to
diff --git a/tests/generic/077 b/tests/generic/077
index 94d89fae..639564ed 100755
--- a/tests/generic/077
+++ b/tests/generic/077
@@ -49,7 +49,7 @@ echo "*** create filesystem"
 _scratch_unmount >/dev/null 2>&1
 echo "*** MKFS ***"                         >>$seqres.full
 echo ""                                     >>$seqres.full
-fs_size=$((256 * 1024 * 1024))
+fs_size=$((512 * 1024 * 1024))
 _scratch_mkfs_sized $fs_size >> $seqres.full 2>&1 || _fail "mkfs failed"
 _scratch_mount
 mkdir $SCRATCH_MNT/subdir
diff --git a/tests/generic/081 b/tests/generic/081
index 22ac94de..4901ae2d 100755
--- a/tests/generic/081
+++ b/tests/generic/081
@@ -62,13 +62,13 @@ snapname=snap_$seq
 mnt=$TEST_DIR/mnt_$seq
 mkdir -p $mnt
 
-# make sure there's enough disk space for 256M lv, test for 300M here in case
+# make sure there's enough disk space for 400 lv, test for 512M here in case
 # lvm uses some space for metadata
-_scratch_mkfs_sized $((300 * 1024 * 1024)) >>$seqres.full 2>&1
+_scratch_mkfs_sized $((512 * 1024 * 1024)) >>$seqres.full 2>&1
 $LVM_PROG vgcreate -f $vgname $SCRATCH_DEV >>$seqres.full 2>&1
 # We use yes pipe instead of 'lvcreate --yes' because old version of lvm
 # (like 2.02.95 in RHEL6) don't support --yes option
-yes | $LVM_PROG lvcreate -L 256M -n $lvname $vgname >>$seqres.full 2>&1
+yes | $LVM_PROG lvcreate -L 400M -n $lvname $vgname >>$seqres.full 2>&1
 # wait for lvcreation to fully complete
 $UDEV_SETTLE_PROG >>$seqres.full 2>&1
 
diff --git a/tests/generic/083 b/tests/generic/083
index 2a5af3cc..4c79538c 100755
--- a/tests/generic/083
+++ b/tests/generic/083
@@ -62,7 +62,7 @@ workout()
 
 echo "*** test out-of-space handling for random write operations"
 
-filesize=`expr 256 \* 1024 \* 1024`
+filesize=`expr 512 \* 1024 \* 1024`
 agcount=6
 numprocs=15
 numops=1500
diff --git a/tests/generic/085 b/tests/generic/085
index 786d8e6f..006fcb5d 100755
--- a/tests/generic/085
+++ b/tests/generic/085
@@ -50,7 +50,7 @@ setup_dmdev()
 
 echo "Silence is golden"
 
-size=$((256 * 1024 * 1024))
+size=$((512 * 1024 * 1024))
 size_in_sector=$((size / 512))
 _scratch_mkfs_sized $size >>$seqres.full 2>&1
 
diff --git a/tests/generic/108 b/tests/generic/108
index efe66ba5..dc6614d2 100755
--- a/tests/generic/108
+++ b/tests/generic/108
@@ -46,7 +46,7 @@ physical=`blockdev --getpbsz $SCRATCH_DEV`
 logical=`blockdev --getss $SCRATCH_DEV`
 
 # _get_scsi_debug_dev returns a scsi debug device with 128M in size by default
-SCSI_DEBUG_DEV=`_get_scsi_debug_dev ${physical:-512} ${logical:-512} 0 300`
+SCSI_DEBUG_DEV=`_get_scsi_debug_dev ${physical:-512} ${logical:-512} 0 512`
 test -b "$SCSI_DEBUG_DEV" || _notrun "Failed to initialize scsi debug device"
 echo "SCSI debug device $SCSI_DEBUG_DEV" >>$seqres.full
 
@@ -55,7 +55,7 @@ $LVM_PROG pvcreate -f $SCSI_DEBUG_DEV $SCRATCH_DEV >>$seqres.full 2>&1
 $LVM_PROG vgcreate -f $vgname $SCSI_DEBUG_DEV $SCRATCH_DEV >>$seqres.full 2>&1
 # We use yes pipe instead of 'lvcreate --yes' because old version of lvm
 # (like 2.02.95 in RHEL6) don't support --yes option
-yes | $LVM_PROG lvcreate -i 2 -I 4m -L 275m -n $lvname $vgname \
+yes | $LVM_PROG lvcreate -i 2 -I 4m -L 400m -n $lvname $vgname \
 	>>$seqres.full 2>&1
 # wait for lv creation to fully complete
 $UDEV_SETTLE_PROG >>$seqres.full 2>&1
diff --git a/tests/generic/204 b/tests/generic/204
index a33a090f..3589b084 100755
--- a/tests/generic/204
+++ b/tests/generic/204
@@ -30,7 +30,7 @@ _require_scratch
 # time solves this problem.
 [ $FSTYP = "xfs" ] && MKFS_OPTIONS="$MKFS_OPTIONS -l size=16m -i maxpct=50"
 
-SIZE=`expr 115 \* 1024 \* 1024`
+SIZE=`expr 512 \* 1024 \* 1024`
 _scratch_mkfs_sized $SIZE 2> /dev/null > $tmp.mkfs.raw
 cat $tmp.mkfs.raw | _filter_mkfs 2> $tmp.mkfs > /dev/null
 _scratch_mount
diff --git a/tests/generic/226 b/tests/generic/226
index 34434730..d814b365 100755
--- a/tests/generic/226
+++ b/tests/generic/226
@@ -19,7 +19,7 @@ _require_odirect
 
 _scratch_unmount 2>/dev/null
 echo "--> mkfs 256m filesystem"
-_scratch_mkfs_sized `expr 256 \* 1024 \* 1024` >> $seqres.full 2>&1
+_scratch_mkfs_sized `expr 512 \* 1024 \* 1024` >> $seqres.full 2>&1
 _scratch_mount
 
 loops=16
diff --git a/tests/generic/250 b/tests/generic/250
index 97e9522f..bd1c6ffd 100755
--- a/tests/generic/250
+++ b/tests/generic/250
@@ -32,7 +32,7 @@ _require_odirect
 # bitmap consuming all the free space in our small data device.
 unset SCRATCH_RTDEV
 
-fssize=$((196 * 1048576))
+fssize=$((512 * 1048576))
 echo "Format and mount"
 $XFS_IO_PROG -d -c "pwrite -S 0x69 -b 1048576 0 $fssize" $SCRATCH_DEV >> $seqres.full
 _scratch_mkfs_sized $fssize > $seqres.full 2>&1
diff --git a/tests/generic/252 b/tests/generic/252
index 8c5adb53..93ab5242 100755
--- a/tests/generic/252
+++ b/tests/generic/252
@@ -33,7 +33,7 @@ AIO_TEST="$here/src/aio-dio-regress/aiocp"
 # bitmap consuming all the free space in our small data device.
 unset SCRATCH_RTDEV
 
-fssize=$((196 * 1048576))
+fssize=$((512 * 1048576))
 echo "Format and mount"
 $XFS_IO_PROG -d -c "pwrite -S 0x69 -b 1048576 0 $fssize" $SCRATCH_DEV >> $seqres.full
 _scratch_mkfs_sized $fssize > $seqres.full 2>&1
diff --git a/tests/generic/371 b/tests/generic/371
index a2fdaf7b..538df647 100755
--- a/tests/generic/371
+++ b/tests/generic/371
@@ -20,7 +20,7 @@ _require_scratch
 _require_xfs_io_command "falloc"
 test "$FSTYP" = "xfs" && _require_xfs_io_command "extsize"
 
-_scratch_mkfs_sized $((256 * 1024 * 1024)) >> $seqres.full 2>&1
+_scratch_mkfs_sized $((512 * 1024 * 1024)) >> $seqres.full 2>&1
 _scratch_mount
 
 # Disable speculative post-EOF preallocation on XFS, which can grow fast enough
diff --git a/tests/generic/387 b/tests/generic/387
index 25ca86bb..0546b7de 100755
--- a/tests/generic/387
+++ b/tests/generic/387
@@ -19,7 +19,7 @@ _supported_fs generic
 _require_scratch_reflink
 
 #btrfs needs 256mb to create default blockgroup fs
-_scratch_mkfs_sized $((256 * 1024 * 1024)) >> $seqres.full 2>&1
+_scratch_mkfs_sized $((512 * 1024 * 1024)) >> $seqres.full 2>&1
 _scratch_mount
 
 testfile=$SCRATCH_MNT/testfile
diff --git a/tests/generic/416 b/tests/generic/416
index deb05f07..24fdb737 100755
--- a/tests/generic/416
+++ b/tests/generic/416
@@ -21,7 +21,7 @@ _begin_fstest auto enospc
 _supported_fs generic
 _require_scratch
 
-fs_size=$((128 * 1024 * 1024))
+fs_size=$((512 * 1024 * 1024))
 page_size=$(get_page_size)
 
 # We will never reach this number though
diff --git a/tests/generic/416.out b/tests/generic/416.out
index 8d2ffacf..8f12447d 100644
--- a/tests/generic/416.out
+++ b/tests/generic/416.out
@@ -1,3 +1,3 @@
 QA output created by 416
-wrote 16777216/16777216 bytes at offset 0
+wrote 67108864/67108864 bytes at offset 0
 XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
diff --git a/tests/generic/427 b/tests/generic/427
index 26385d36..4f44c2ea 100755
--- a/tests/generic/427
+++ b/tests/generic/427
@@ -27,7 +27,7 @@ _require_aiodio aio-dio-eof-race
 _require_no_compress
 
 # limit the filesystem size, to save the time of filling filesystem
-_scratch_mkfs_sized $((256 * 1024 * 1024)) >>$seqres.full 2>&1
+_scratch_mkfs_sized $((512 * 1024 * 1024)) >>$seqres.full 2>&1
 _scratch_mount
 
 # try to write more bytes than filesystem size to fill the filesystem,
diff --git a/tests/generic/449 b/tests/generic/449
index 2b77a6a4..aebb5620 100755
--- a/tests/generic/449
+++ b/tests/generic/449
@@ -24,7 +24,7 @@ _require_test
 _require_acls
 _require_attrs trusted
 
-_scratch_mkfs_sized $((256 * 1024 * 1024)) >> $seqres.full 2>&1
+_scratch_mkfs_sized $((512 * 1024 * 1024)) >> $seqres.full 2>&1
 _scratch_mount || _fail "mount failed"
 
 # This is a test of xattr behavior when we run out of disk space for xattrs,
diff --git a/tests/generic/455 b/tests/generic/455
index 649b5410..128e87d5 100755
--- a/tests/generic/455
+++ b/tests/generic/455
@@ -51,7 +51,7 @@ SANITY_DIR=$TEST_DIR/fsxtests
 rm -rf $SANITY_DIR
 mkdir $SANITY_DIR
 
-devsize=$((1024*1024*200 / 512))        # 200m phys/virt size
+devsize=$((1024*1024*512 / 512))        # 512m phys/virt size
 csize=$((1024*64 / 512))                # 64k cluster size
 lowspace=$((1024*1024 / 512))           # 1m low space threshold
 
diff --git a/tests/generic/457 b/tests/generic/457
index da75798f..8604d5c5 100755
--- a/tests/generic/457
+++ b/tests/generic/457
@@ -55,7 +55,7 @@ SANITY_DIR=$TEST_DIR/fsxtests
 rm -rf $SANITY_DIR
 mkdir $SANITY_DIR
 
-devsize=$((1024*1024*200 / 512))        # 200m phys/virt size
+devsize=$((1024*1024*512 / 512))        # 512m phys/virt size
 csize=$((1024*64 / 512))                # 64k cluster size
 lowspace=$((1024*1024 / 512))           # 1m low space threshold
 
diff --git a/tests/generic/482 b/tests/generic/482
index 28c83a23..011e605d 100755
--- a/tests/generic/482
+++ b/tests/generic/482
@@ -64,7 +64,7 @@ if [ $nr_cpus -gt 8 ]; then
 fi
 fsstress_args=$(_scale_fsstress_args -w -d $SCRATCH_MNT -n 512 -p $nr_cpus \
 		$FSSTRESS_AVOID)
-devsize=$((1024*1024*200 / 512))	# 200m phys/virt size
+devsize=$((1024*1024*512 / 512))	# 512m phys/virt size
 csize=$((1024*64 / 512))		# 64k cluster size
 lowspace=$((1024*1024 / 512))		# 1m low space threshold
 
diff --git a/tests/generic/511 b/tests/generic/511
index 058d8401..8b1209d3 100755
--- a/tests/generic/511
+++ b/tests/generic/511
@@ -19,7 +19,7 @@ _require_scratch
 _require_xfs_io_command "falloc" "-k"
 _require_xfs_io_command "fzero"
 
-_scratch_mkfs_sized $((1024 * 1024 * 256)) >>$seqres.full 2>&1
+_scratch_mkfs_sized $((1024 * 1024 * 512)) >>$seqres.full 2>&1
 _scratch_mount
 
 $XFS_IO_PROG -fc "pwrite 0 256m" -c fsync $SCRATCH_MNT/file >>$seqres.full 2>&1
diff --git a/tests/generic/520 b/tests/generic/520
index ad6764c7..2a96dce1 100755
--- a/tests/generic/520
+++ b/tests/generic/520
@@ -24,8 +24,8 @@ _cleanup()
 . ./common/filter
 . ./common/dmflakey
 
-# 256MB in byte
-fssize=$((2**20 * 256))
+# 512MB in byte
+fssize=$((2**20 * 512))
 
 # real QA test starts here
 _supported_fs generic
diff --git a/tests/generic/536 b/tests/generic/536
index 986ea1ee..aac05587 100755
--- a/tests/generic/536
+++ b/tests/generic/536
@@ -21,7 +21,7 @@ _require_scratch
 _require_scratch_shutdown
 
 # create a small fs and initialize free blocks with a unique pattern
-_scratch_mkfs_sized $((1024 * 1024 * 100)) >> $seqres.full 2>&1
+_scratch_mkfs_sized $((1024 * 1024 * 512)) >> $seqres.full 2>&1
 _scratch_mount
 $XFS_IO_PROG -f -c "pwrite -S 0xab 0 100m" -c fsync $SCRATCH_MNT/spc \
 	>> $seqres.full 2>&1
diff --git a/tests/generic/619 b/tests/generic/619
index 6e42d677..1e883394 100755
--- a/tests/generic/619
+++ b/tests/generic/619
@@ -26,7 +26,7 @@
 . ./common/preamble
 _begin_fstest auto rw enospc
 
-FS_SIZE=$((240*1024*1024)) # 240MB
+FS_SIZE=$((512*1024*1024)) # 512MB
 DEBUG=1 # set to 0 to disable debug statements in shell and c-prog
 FACT=0.7
 
diff --git a/tests/generic/626 b/tests/generic/626
index 7e577798..a0411f01 100755
--- a/tests/generic/626
+++ b/tests/generic/626
@@ -22,7 +22,7 @@ _supported_fs generic
 _require_scratch
 _require_renameat2 whiteout
 
-_scratch_mkfs_sized $((256 * 1024 * 1024)) >> $seqres.full 2>&1
+_scratch_mkfs_sized $((512 * 1024 * 1024)) >> $seqres.full 2>&1
 _scratch_mount
 
 # Create lots of files, to help to trigger the bug easily
diff --git a/tests/xfs/002 b/tests/xfs/002
index 6c0bb4d0..53dc8b57 100755
--- a/tests/xfs/002
+++ b/tests/xfs/002
@@ -27,7 +27,7 @@ _require_no_large_scratch_dev
 # So we can explicitly turn it _off_:
 _require_xfs_mkfs_crc
 
-_scratch_mkfs_xfs -m crc=0 -d size=128m >> $seqres.full 2>&1 || _fail "mkfs failed"
+_scratch_mkfs_xfs -m crc=0 -d size=512m >> $seqres.full 2>&1 || _fail "mkfs failed"
 
 # Scribble past a couple V4 secondary superblocks to populate sb_crc
 # (We can't write to the structure member because it doesn't exist
diff --git a/tests/xfs/015 b/tests/xfs/015
index 2bb7b8d5..1f487cae 100755
--- a/tests/xfs/015
+++ b/tests/xfs/015
@@ -43,7 +43,7 @@ _scratch_mount
 _require_fs_space $SCRATCH_MNT 131072
 _scratch_unmount
 
-_scratch_mkfs_sized $((32 * 1024 * 1024)) > $tmp.mkfs.raw || _fail "mkfs failed"
+_scratch_mkfs_sized $((512 * 1024 * 1024)) > $tmp.mkfs.raw || _fail "mkfs failed"
 cat $tmp.mkfs.raw | _filter_mkfs >$seqres.full 2>$tmp.mkfs
 # get original data blocks number and agcount
 . $tmp.mkfs
diff --git a/tests/xfs/041 b/tests/xfs/041
index 05de5578..5173cfe5 100755
--- a/tests/xfs/041
+++ b/tests/xfs/041
@@ -38,10 +38,10 @@ _fill()
 }
 
 _do_die_on_error=message_only
-agsize=32
+agsize=512
 echo -n "Make $agsize megabyte filesystem on SCRATCH_DEV and mount... "
-_scratch_mkfs_xfs -dsize=${agsize}m,agcount=1 2>&1 >/dev/null || _fail "mkfs failed"
-bsize=`_scratch_mkfs_xfs -dsize=${agsize}m,agcount=1 2>&1 | _filter_mkfs 2>&1 \
+_scratch_mkfs_xfs -dsize=${agsize}m,agcount=2 2>&1 >/dev/null || _fail "mkfs failed"
+bsize=`_scratch_mkfs_xfs -dsize=${agsize}m,agcount=2 2>&1 | _filter_mkfs 2>&1 \
 		| perl -ne 'if (/dbsize=(\d+)/) {print $1;}'`
 onemeginblocks=`expr 1048576 / $bsize`
 _scratch_mount
@@ -51,7 +51,7 @@ echo "done"
 # full allocation group -> partial; partial -> expand partial + new partial;
 # partial -> expand partial; partial -> full
 # cycle through 33m -> 67m -> 75m -> 96m
-for size in 33 67 75 96
+for size in 513 1027 1059 1536
 do
     grow_size=`expr $size \* $onemeginblocks`
     _fill $SCRATCH_MNT/fill_$size
diff --git a/tests/xfs/041.out b/tests/xfs/041.out
index 0e675804..9e2a2c6d 100644
--- a/tests/xfs/041.out
+++ b/tests/xfs/041.out
@@ -1,19 +1,19 @@
 QA output created by 041
-Make 32 megabyte filesystem on SCRATCH_DEV and mount... done
+Make 512 megabyte filesystem on SCRATCH_DEV and mount... done
 Fill filesystem... done
-Grow filesystem to 33m... done
+Grow filesystem to 513m... done
 Flush filesystem... done
 Check files... done
 Fill filesystem... done
-Grow filesystem to 67m... done
+Grow filesystem to 1027m... done
 Flush filesystem... done
 Check files... done
 Fill filesystem... done
-Grow filesystem to 75m... done
+Grow filesystem to 1059m... done
 Flush filesystem... done
 Check files... done
 Fill filesystem... done
-Grow filesystem to 96m... done
+Grow filesystem to 1536m... done
 Flush filesystem... done
 Check files... done
 Growfs tests passed.
diff --git a/tests/xfs/042 b/tests/xfs/042
index d62eb045..baa0f424 100755
--- a/tests/xfs/042
+++ b/tests/xfs/042
@@ -52,7 +52,7 @@ _require_scratch
 _do_die_on_error=message_only
 
 echo -n "Make a 48 megabyte filesystem on SCRATCH_DEV and mount... "
-_scratch_mkfs_xfs -dsize=48m,agcount=3 2>&1 >/dev/null || _fail "mkfs failed"
+_scratch_mkfs_xfs -dsize=512m,agcount=3 2>&1 >/dev/null || _fail "mkfs failed"
 _scratch_mount
 
 echo "done"
diff --git a/tests/xfs/049 b/tests/xfs/049
index 69656a85..e04769bf 100755
--- a/tests/xfs/049
+++ b/tests/xfs/049
@@ -57,7 +57,7 @@ mount -t ext2 $SCRATCH_DEV $SCRATCH_MNT >> $seqres.full 2>&1 \
     || _fail "!!! failed to mount"
 
 _log "Create xfs fs in file on scratch"
-${MKFS_XFS_PROG} -f -dfile,name=$SCRATCH_MNT/test.xfs,size=40m \
+${MKFS_XFS_PROG} -f -dfile,name=$SCRATCH_MNT/test.xfs,size=512m \
     >> $seqres.full 2>&1 \
     || _fail "!!! failed to mkfs xfs"
 
diff --git a/tests/xfs/073 b/tests/xfs/073
index c7616b9e..48c293e9 100755
--- a/tests/xfs/073
+++ b/tests/xfs/073
@@ -110,7 +110,7 @@ _require_xfs_copy
 _require_scratch
 _require_loop
 
-_scratch_mkfs_xfs -dsize=41m,agcount=2 >>$seqres.full 2>&1
+_scratch_mkfs_xfs -dsize=512m,agcount=2 >>$seqres.full 2>&1
 _scratch_mount
 
 echo
diff --git a/tests/xfs/076 b/tests/xfs/076
index 8eef1367..b352cd04 100755
--- a/tests/xfs/076
+++ b/tests/xfs/076
@@ -69,7 +69,7 @@ _require_xfs_sparse_inodes
 # bitmap consuming all the free space in our small data device.
 unset SCRATCH_RTDEV
 
-_scratch_mkfs "-d size=50m -m crc=1 -i sparse" | tee -a $seqres.full |
+_scratch_mkfs "-d size=512m -m crc=1 -i sparse" | tee -a $seqres.full |
 	_filter_mkfs > /dev/null 2> $tmp.mkfs
 . $tmp.mkfs	# for isize
 
diff --git a/tests/xfs/078 b/tests/xfs/078
index 1f475c96..9a24086e 100755
--- a/tests/xfs/078
+++ b/tests/xfs/078
@@ -103,9 +103,9 @@ _grow_loop()
 _grow_loop $((168024*4096)) 1376452608 4096 1
 
 # Some other blocksize cases...
-_grow_loop $((168024*2048)) 1376452608 2048 1
-_grow_loop $((168024*512)) 1376452608 512 1 16m
-_grow_loop $((168024*1024)) 688230400 1024 1
+_grow_loop $((168024*4096)) 1376452608 2048 1
+_grow_loop $((168024*4096)) 1376452608 512 1 16m
+_grow_loop $((168024*4096)) 688230400 1024 1
 
 # Other corner cases suggested by dgc
 # also the following doesn't check if the filesystem is consistent.
diff --git a/tests/xfs/078.out b/tests/xfs/078.out
index cc3c47d1..fe324b07 100644
--- a/tests/xfs/078.out
+++ b/tests/xfs/078.out
@@ -19,9 +19,9 @@ data blocks changed from 168024 to 336048
 *** unmount
 *** check
 
-=== GROWFS (from 344113152 to 1376452608, 2048 blocksize)
+=== GROWFS (from 688226304 to 1376452608, 2048 blocksize)
 
-*** mkfs loop file (size=344113152)
+*** mkfs loop file (size=688226304)
 meta-data=DDEV isize=XXX agcount=N, agsize=XXX blks
 data     = bsize=XXX blocks=XXX, imaxpct=PCT
          = sunit=XXX swidth=XXX, unwritten=X
@@ -32,14 +32,14 @@ realtime =RDEV extsz=XXX blocks=XXX, rtextents=XXX
 wrote 2048/2048 bytes at offset 1376452608
 *** mount loop filesystem
 *** grow loop filesystem
-xfs_growfs --BlockSize=2048 --Blocks=168024
-data blocks changed from 168024 to 672096
+xfs_growfs --BlockSize=2048 --Blocks=336048
+data blocks changed from 336048 to 672096
 *** unmount
 *** check
 
-=== GROWFS (from 86028288 to 1376452608, 512 blocksize)
+=== GROWFS (from 688226304 to 1376452608, 512 blocksize)
 
-*** mkfs loop file (size=86028288)
+*** mkfs loop file (size=688226304)
 meta-data=DDEV isize=XXX agcount=N, agsize=XXX blks
 data     = bsize=XXX blocks=XXX, imaxpct=PCT
          = sunit=XXX swidth=XXX, unwritten=X
@@ -50,14 +50,14 @@ realtime =RDEV extsz=XXX blocks=XXX, rtextents=XXX
 wrote 512/512 bytes at offset 1376452608
 *** mount loop filesystem
 *** grow loop filesystem
-xfs_growfs --BlockSize=512 --Blocks=163840
-data blocks changed from 163840 to 2688384
+xfs_growfs --BlockSize=512 --Blocks=1344192
+data blocks changed from 1344192 to 2688384
 *** unmount
 *** check
 
-=== GROWFS (from 172056576 to 688230400, 1024 blocksize)
+=== GROWFS (from 688226304 to 688230400, 1024 blocksize)
 
-*** mkfs loop file (size=172056576)
+*** mkfs loop file (size=688226304)
 meta-data=DDEV isize=XXX agcount=N, agsize=XXX blks
 data     = bsize=XXX blocks=XXX, imaxpct=PCT
          = sunit=XXX swidth=XXX, unwritten=X
@@ -68,8 +68,7 @@ realtime =RDEV extsz=XXX blocks=XXX, rtextents=XXX
 wrote 1024/1024 bytes at offset 688230400
 *** mount loop filesystem
 *** grow loop filesystem
-xfs_growfs --BlockSize=1024 --Blocks=168024
-data blocks changed from 168024 to 672096
+xfs_growfs --BlockSize=1024 --Blocks=672096
 *** unmount
 *** check
 
diff --git a/tests/xfs/104 b/tests/xfs/104
index d16f46d8..e4876633 100755
--- a/tests/xfs/104
+++ b/tests/xfs/104
@@ -53,14 +53,14 @@ _require_xfs_io_command "falloc"
 _scratch_mkfs_xfs | tee -a $seqres.full | _filter_mkfs 2>$tmp.mkfs
 . $tmp.mkfs	# extract blocksize and data size for scratch device
 
-endsize=`expr 550 \* 1048576`	# stop after growing this big
-incsize=`expr  42 \* 1048576`	# grow in chunks of this size
+endsize=`expr 1920 \* 1048576`	# stop after growing this big
+incsize=`expr 179 \* 1048576`	# grow in chunks of this size
 modsize=`expr   4 \* $incsize`	# pause after this many increments
 
 [ `expr $endsize / $dbsize` -lt $dblocks ] || _notrun "Scratch device too small"
 
 nags=4
-size=`expr 125 \* 1048576`	# 120 megabytes initially
+size=`expr 512 \* 1048576`	# 512 megabytes initially
 sizeb=`expr $size / $dbsize`	# in data blocks
 echo "*** creating scratch filesystem"
 logblks=$(_scratch_find_xfs_min_logblocks -dsize=${size} -dagcount=${nags})
diff --git a/tests/xfs/104.out b/tests/xfs/104.out
index de6c7f27..c3fc8829 100644
--- a/tests/xfs/104.out
+++ b/tests/xfs/104.out
@@ -95,33 +95,3 @@ log      =LDEV bsize=XXX blocks=XXX
 realtime =RDEV extsz=XXX blocks=XXX, rtextents=XXX
 AGCOUNT=14
 
-*** stressing filesystem
-*** growing filesystem
-meta-data=DDEV isize=XXX agcount=N, agsize=XXX blks
-data     = bsize=XXX blocks=XXX, imaxpct=PCT
-         = sunit=XXX swidth=XXX, unwritten=X
-naming   =VERN bsize=XXX
-log      =LDEV bsize=XXX blocks=XXX
-realtime =RDEV extsz=XXX blocks=XXX, rtextents=XXX
-AGCOUNT=15
-
-*** stressing filesystem
-*** growing filesystem
-meta-data=DDEV isize=XXX agcount=N, agsize=XXX blks
-data     = bsize=XXX blocks=XXX, imaxpct=PCT
-         = sunit=XXX swidth=XXX, unwritten=X
-naming   =VERN bsize=XXX
-log      =LDEV bsize=XXX blocks=XXX
-realtime =RDEV extsz=XXX blocks=XXX, rtextents=XXX
-AGCOUNT=17
-
-*** stressing filesystem
-*** growing filesystem
-meta-data=DDEV isize=XXX agcount=N, agsize=XXX blks
-data     = bsize=XXX blocks=XXX, imaxpct=PCT
-         = sunit=XXX swidth=XXX, unwritten=X
-naming   =VERN bsize=XXX
-log      =LDEV bsize=XXX blocks=XXX
-realtime =RDEV extsz=XXX blocks=XXX, rtextents=XXX
-AGCOUNT=18
-
diff --git a/tests/xfs/107 b/tests/xfs/107
index 1ea9c492..e1f9b537 100755
--- a/tests/xfs/107
+++ b/tests/xfs/107
@@ -23,9 +23,9 @@ _require_scratch
 _require_xfs_io_command allocsp		# detect presence of ALLOCSP ioctl
 _require_test_program allocstale
 
-# Create a 256MB filesystem to avoid running into mkfs problems with too-small
+# Create a 512MB filesystem to avoid running into mkfs problems with too-small
 # filesystems.
-size_mb=256
+size_mb=512
 
 # Write a known pattern to the disk so that we can detect stale disk blocks
 # being mapped into the file.  In the test author's experience, the bug will
diff --git a/tests/xfs/118 b/tests/xfs/118
index 03755b28..6fc3cdaa 100755
--- a/tests/xfs/118
+++ b/tests/xfs/118
@@ -27,8 +27,8 @@ _require_scratch
 _require_command "$XFS_FSR_PROG" "xfs_fsr"
 _require_xfs_io_command "falloc"
 
-# 50M
-_scratch_mkfs_sized $((50 * 1024 * 1024)) >> $seqres.full 2>&1
+# 512M
+_scratch_mkfs_sized $((512 * 1024 * 1024)) >> $seqres.full 2>&1
 _scratch_mount
 
 echo "Silence is golden"
diff --git a/tests/xfs/148 b/tests/xfs/148
index 5d0a0bf4..f64d10df 100755
--- a/tests/xfs/148
+++ b/tests/xfs/148
@@ -44,7 +44,7 @@ rm -f $imgfile $imgfile.old
 # We need to use 512 byte inodes to ensure the attr forks remain in short form
 # even when security xattrs are present so we are always doing name matches on
 # lookup and not name hash compares as leaf/node forms will do.
-$XFS_IO_PROG -f -c 'truncate 40m' $imgfile
+$XFS_IO_PROG -f -c 'truncate 512m' $imgfile
 loopdev=$(_create_loop_device $imgfile)
 MKFS_OPTIONS="-m crc=0 -i size=512" _mkfs_dev $loopdev >> $seqres.full
 
diff --git a/tests/xfs/149 b/tests/xfs/149
index 503eff65..49762556 100755
--- a/tests/xfs/149
+++ b/tests/xfs/149
@@ -42,10 +42,10 @@ _require_loop
 mkdir -p $mntdir || _fail "!!! failed to create temp mount dir"
 
 echo "=== mkfs.xfs ==="
-$MKFS_XFS_PROG -d file,name=$loopfile,size=16m -f >/dev/null 2>&1
+$MKFS_XFS_PROG -d file,name=$loopfile,size=512m -f >> $seqres.full 2>&1
 
 echo "=== truncate ==="
-$XFS_IO_PROG -fc "truncate 256m" $loopfile
+$XFS_IO_PROG -fc "truncate 3072m" $loopfile
 
 echo "=== create loop device ==="
 loop_dev=$(_create_loop_device $loopfile)
@@ -69,10 +69,10 @@ echo "=== mount ==="
 $MOUNT_PROG $loop_dev $mntdir || _fail "!!! failed to loopback mount"
 
 echo "=== xfs_growfs - check device node ==="
-$XFS_GROWFS_PROG -D 8192 $loop_dev > /dev/null
+$XFS_GROWFS_PROG -D 262144 $loop_dev > /dev/null
 
 echo "=== xfs_growfs - check device symlink ==="
-$XFS_GROWFS_PROG -D 12288 $loop_symlink > /dev/null
+$XFS_GROWFS_PROG -D 393216 $loop_symlink > /dev/null
 
 echo "=== unmount ==="
 $UMOUNT_PROG $mntdir || _fail "!!! failed to unmount"
@@ -81,10 +81,10 @@ echo "=== mount device symlink ==="
 $MOUNT_PROG $loop_symlink $mntdir || _fail "!!! failed to loopback mount"
 
 echo "=== xfs_growfs - check device symlink ==="
-$XFS_GROWFS_PROG -D 16384 $loop_symlink > /dev/null
+$XFS_GROWFS_PROG -D 524288 $loop_symlink > /dev/null
 
 echo "=== xfs_growfs - check device node ==="
-$XFS_GROWFS_PROG -D 20480 $loop_dev > /dev/null
+$XFS_GROWFS_PROG -D 655360 $loop_dev > /dev/null
 
 # success, all done
 status=0
diff --git a/tests/xfs/168 b/tests/xfs/168
index ffcd0df8..f3d5193b 100755
--- a/tests/xfs/168
+++ b/tests/xfs/168
@@ -51,7 +51,7 @@ _require_xfs_io_command "falloc"
 _scratch_mkfs_xfs | tee -a $seqres.full | _filter_mkfs 2>$tmp.mkfs >/dev/null
 . $tmp.mkfs	# extract blocksize and data size for scratch device
 
-endsize=`expr 125 \* 1048576`	# stop after shrinking this big
+endsize=`expr 300 \* 1048576`	# stop after shrinking this big
 [ `expr $endsize / $dbsize` -lt $dblocks ] || _notrun "Scratch device too small"
 
 nags=2
diff --git a/tests/xfs/170 b/tests/xfs/170
index b9ead341..f437fff3 100755
--- a/tests/xfs/170
+++ b/tests/xfs/170
@@ -31,11 +31,11 @@ _set_stream_timeout_centisecs 3000
 # the log for small filesystems, so we make sure there's one more AG than
 # filestreams to encourage the allocator to skip whichever AG owns the log.
 #
-# Exercise 9x 22MB AGs, 4 filestreams, 8 files per stream, and 3MB per file.
-_test_streams 9 22 4 8 3 0 0
-_test_streams 9 22 4 8 3 1 0
-_test_streams 9 22 4 8 3 0 1
-_test_streams 9 22 4 8 3 1 1
+# Exercise 9x 68MB AGs, 4 filestreams, 8 files per stream, and 9MB per file.
+_test_streams 9 68 4 8 9 0 0
+_test_streams 9 68 4 8 9 1 0
+_test_streams 9 68 4 8 9 0 1
+_test_streams 9 68 4 8 9 1 1
 
 status=0
 exit
diff --git a/tests/xfs/170.out b/tests/xfs/170.out
index 16dcb795..513c230d 100644
--- a/tests/xfs/170.out
+++ b/tests/xfs/170.out
@@ -1,20 +1,20 @@
 QA output created by 170
-# testing 9 22 4 8 3 0 0 ....
+# testing 9 68 4 8 9 0 0 ....
 # streaming
 # sync AGs...
 # checking stream AGs...
 + passed, streams are in seperate AGs
-# testing 9 22 4 8 3 1 0 ....
+# testing 9 68 4 8 9 1 0 ....
 # streaming
 # sync AGs...
 # checking stream AGs...
 + passed, streams are in seperate AGs
-# testing 9 22 4 8 3 0 1 ....
+# testing 9 68 4 8 9 0 1 ....
 # streaming
 # sync AGs...
 # checking stream AGs...
 + passed, streams are in seperate AGs
-# testing 9 22 4 8 3 1 1 ....
+# testing 9 68 4 8 9 1 1 ....
 # streaming
 # sync AGs...
 # checking stream AGs...
diff --git a/tests/xfs/174 b/tests/xfs/174
index 1245a217..3b04cd35 100755
--- a/tests/xfs/174
+++ b/tests/xfs/174
@@ -24,8 +24,8 @@ _check_filestreams_support || _notrun "filestreams not available"
 # test number of streams greater than AGs. Expected to fail.
 _set_stream_timeout_centisecs 6000
 
-_test_streams 8 32 65 3 1 1 0 fail
-_test_streams 8 32 65 3 1 0 1 fail
+_test_streams 8 68 72 3 1 1 0 fail
+_test_streams 8 68 72 3 1 0 1 fail
 
 status=0
 exit
diff --git a/tests/xfs/174.out b/tests/xfs/174.out
index 5df581fe..d9fea2f7 100644
--- a/tests/xfs/174.out
+++ b/tests/xfs/174.out
@@ -1,10 +1,10 @@
 QA output created by 174
-# testing 8 32 65 3 1 1 0 fail ....
+# testing 8 68 72 3 1 1 0 fail ....
 # streaming
 # sync AGs...
 # checking stream AGs...
 + expected failure, matching AGs
-# testing 8 32 65 3 1 0 1 fail ....
+# testing 8 68 72 3 1 0 1 fail ....
 # streaming
 # sync AGs...
 # checking stream AGs...
diff --git a/tests/xfs/176 b/tests/xfs/176
index ba4aae59..8d60cd36 100755
--- a/tests/xfs/176
+++ b/tests/xfs/176
@@ -23,7 +23,7 @@ _require_scratch_xfs_shrink
 _require_xfs_io_command "falloc"
 _require_xfs_io_command "fpunch"
 
-_scratch_mkfs "-d size=50m -m crc=1 -i sparse" |
+_scratch_mkfs "-d size=512m -m crc=1 -i sparse" |
 	_filter_mkfs > /dev/null 2> $tmp.mkfs
 . $tmp.mkfs	# for isize
 cat $tmp.mkfs >> $seqres.full
diff --git a/tests/xfs/205 b/tests/xfs/205
index 104f1f45..f1a8200a 100755
--- a/tests/xfs/205
+++ b/tests/xfs/205
@@ -23,7 +23,7 @@ _require_scratch_nocheck
 unset SCRATCH_RTDEV
 
 fsblksz=1024
-_scratch_mkfs_xfs -d size=$((32768*fsblksz)) -b size=$fsblksz >> $seqres.full 2>&1
+_scratch_mkfs_xfs -d size=$((524288*fsblksz)) -b size=$fsblksz >> $seqres.full 2>&1
 _scratch_mount
 
 # fix the reserve block pool to a known size so that the enospc calculations
diff --git a/tests/xfs/227 b/tests/xfs/227
index cd927dc4..5f5f519e 100755
--- a/tests/xfs/227
+++ b/tests/xfs/227
@@ -122,7 +122,7 @@ create_target_attr_last()
 }
 
 # use a small filesystem so we can control freespace easily
-_scratch_mkfs_sized $((50 * 1024 * 1024)) >> $seqres.full 2>&1
+_scratch_mkfs_sized $((512 * 1024 * 1024)) >> $seqres.full 2>&1
 _scratch_mount
 fragment_freespace
 
diff --git a/tests/xfs/233 b/tests/xfs/233
index 2b2b8666..573b7a17 100755
--- a/tests/xfs/233
+++ b/tests/xfs/233
@@ -18,7 +18,7 @@ _require_xfs_scratch_rmapbt
 _require_no_large_scratch_dev
 
 echo "Format and mount"
-_scratch_mkfs_sized $((2 * 4096 * 4096)) > $seqres.full 2>&1
+_scratch_mkfs_sized $((32 * 4096 * 4096)) > $seqres.full 2>&1
 _scratch_mount >> $seqres.full 2>&1
 
 testdir=$SCRATCH_MNT/test-$seq
diff --git a/tests/xfs/279 b/tests/xfs/279
index 835d187f..262f30b7 100755
--- a/tests/xfs/279
+++ b/tests/xfs/279
@@ -55,7 +55,7 @@ _check_mkfs()
 (
 echo "==================="
 echo "4k physical 512b logical aligned"
-SCSI_DEBUG_DEV=`_get_scsi_debug_dev 4096 512 0 128`
+SCSI_DEBUG_DEV=`_get_scsi_debug_dev 4096 512 0 512`
 test -b "$SCSI_DEBUG_DEV" || _notrun "Could not get scsi_debug device"
 # sector size should default to 4k
 _check_mkfs $SCSI_DEBUG_DEV
@@ -68,7 +68,7 @@ _put_scsi_debug_dev
 (
 echo "==================="
 echo "4k physical 512b logical unaligned"
-SCSI_DEBUG_DEV=`_get_scsi_debug_dev 4096 512 1 128`
+SCSI_DEBUG_DEV=`_get_scsi_debug_dev 4096 512 1 512`
 test -b "$SCSI_DEBUG_DEV" || _notrun "Could not get scsi_debug device"
 # should fail on misalignment
 _check_mkfs $SCSI_DEBUG_DEV
@@ -85,7 +85,7 @@ _put_scsi_debug_dev
 (
 echo "==================="
 echo "hard 4k physical / 4k logical"
-SCSI_DEBUG_DEV=`_get_scsi_debug_dev 4096 4096 0 128`
+SCSI_DEBUG_DEV=`_get_scsi_debug_dev 4096 4096 0 512`
 test -b "$SCSI_DEBUG_DEV" || _notrun "Could not get scsi_debug device"
 # block size smaller than sector size should fail 
 _check_mkfs -b size=2048 $SCSI_DEBUG_DEV
diff --git a/tests/xfs/289 b/tests/xfs/289
index c722deff..dc453b55 100755
--- a/tests/xfs/289
+++ b/tests/xfs/289
@@ -39,10 +39,10 @@ tmpbind=$TEST_DIR/tmpbind.$$
 mkdir -p $tmpdir || _fail "!!! failed to create temp mount dir"
 
 echo "=== mkfs.xfs ==="
-$MKFS_XFS_PROG -d file,name=$tmpfile,size=16m -f >/dev/null 2>&1
+$MKFS_XFS_PROG -d file,name=$tmpfile,size=512m -f >/dev/null 2>&1
 
 echo "=== truncate ==="
-$XFS_IO_PROG -fc "truncate 256m" $tmpfile
+$XFS_IO_PROG -fc "truncate 5g" $tmpfile
 
 echo "=== xfs_growfs - unmounted, command should be rejected ==="
 $XFS_GROWFS_PROG $tmpdir 2>&1 |  _filter_test_dir
@@ -61,34 +61,34 @@ echo "=== mount ==="
 $MOUNT_PROG -o loop $tmpfile $tmpdir || _fail "!!! failed to loopback mount"
 
 echo "=== xfs_growfs - mounted - check absolute path ==="
-$XFS_GROWFS_PROG -D 8192 $tmpdir | _filter_test_dir > /dev/null
+$XFS_GROWFS_PROG -D 262114 $tmpdir | _filter_test_dir > /dev/null
 
 echo "=== xfs_growfs - check relative path ==="
-$XFS_GROWFS_PROG -D 12288 ./tmpdir > /dev/null
+$XFS_GROWFS_PROG -D 393216 ./tmpdir > /dev/null
 
 echo "=== xfs_growfs - no path ==="
-$XFS_GROWFS_PROG -D 16384 tmpdir > /dev/null
+$XFS_GROWFS_PROG -D 524288 tmpdir > /dev/null
 
 echo "=== xfs_growfs - symbolic link ==="
 ln -s $tmpdir $tmpsymlink
-$XFS_GROWFS_PROG -D 20480 $tmpsymlink | _filter_test_dir > /dev/null
+$XFS_GROWFS_PROG -D 655360 $tmpsymlink | _filter_test_dir > /dev/null
 
 echo "=== xfs_growfs - symbolic link using relative path ==="
-$XFS_GROWFS_PROG -D 24576 ./tmpsymlink.$$ > /dev/null
+$XFS_GROWFS_PROG -D 786432 ./tmpsymlink.$$ > /dev/null
 
 echo "=== xfs_growfs - symbolic link using no path ==="
-$XFS_GROWFS_PROG -D 28672 tmpsymlink.$$ > /dev/null
+$XFS_GROWFS_PROG -D 917504 tmpsymlink.$$ > /dev/null
 
 echo "=== xfs_growfs - bind mount ==="
 mkdir $tmpbind
 $MOUNT_PROG -o bind $tmpdir $tmpbind
-$XFS_GROWFS_PROG -D 32768 $tmpbind | _filter_test_dir > /dev/null
+$XFS_GROWFS_PROG -D 1048576 $tmpbind | _filter_test_dir > /dev/null
 
 echo "=== xfs_growfs - bind mount - relative path ==="
-$XFS_GROWFS_PROG -D 36864 ./tmpbind.$$ > /dev/null
+$XFS_GROWFS_PROG -D 1179648 ./tmpbind.$$ > /dev/null
 
 echo "=== xfs_growfs - bind mount - no path ==="
-$XFS_GROWFS_PROG -D 40960 tmpbind.$$ > /dev/null
+$XFS_GROWFS_PROG -D 1310720 tmpbind.$$ > /dev/null
 
 echo "=== xfs_growfs - plain file - should be rejected ==="
 $XFS_GROWFS_PROG $tmpfile 2>&1 | _filter_test_dir
diff --git a/tests/xfs/291 b/tests/xfs/291
index a2425e47..560e8891 100755
--- a/tests/xfs/291
+++ b/tests/xfs/291
@@ -16,8 +16,8 @@ _supported_fs xfs
 
 # real QA test starts here
 _require_scratch
-logblks=$(_scratch_find_xfs_min_logblocks -n size=16k -d size=133m)
-_scratch_mkfs_xfs -n size=16k -l size=${logblks}b -d size=133m >> $seqres.full 2>&1
+logblks=$(_scratch_find_xfs_min_logblocks -n size=16k -d size=512m)
+_scratch_mkfs_xfs -n size=16k -l size=${logblks}b -d size=512m >> $seqres.full 2>&1
 _scratch_mount
 
 # First we cause very badly fragmented freespace, then
diff --git a/tests/xfs/306 b/tests/xfs/306
index b57bf4c0..b52285da 100755
--- a/tests/xfs/306
+++ b/tests/xfs/306
@@ -30,7 +30,7 @@ unset SCRATCH_RTDEV
 
 # Create a small fs with a large directory block size. We want to fill up the fs
 # quickly and then create multi-fsb dirblocks over fragmented free space.
-_scratch_mkfs_xfs -d size=20m -n size=64k >> $seqres.full 2>&1
+_scratch_mkfs_xfs -d size=512m -n size=64k >> $seqres.full 2>&1
 _scratch_mount
 
 # Fill a source directory with many largish-named files. 1k uuid-named entries
diff --git a/tests/xfs/514 b/tests/xfs/514
index cf5588f2..1243d293 100755
--- a/tests/xfs/514
+++ b/tests/xfs/514
@@ -37,7 +37,7 @@ esac
 _require_command "$(type -P $CAT)" $CAT
 
 file=$TEST_DIR/xx.$seq
-truncate -s 128m $file
+truncate -s 512m $file
 $MKFS_XFS_PROG $file >> /dev/null
 
 for COMMAND in `$XFS_DB_PROG -x -c help $file | awk '{print $1}' | grep -v "^Use"`; do
diff --git a/tests/xfs/520 b/tests/xfs/520
index 2fceb07c..d9e252bd 100755
--- a/tests/xfs/520
+++ b/tests/xfs/520
@@ -60,7 +60,7 @@ force_crafted_metadata() {
 }
 
 bigval=100000000
-fsdsopt="-d agcount=1,size=64m"
+fsdsopt="-d agcount=1,size=512m"
 
 force_crafted_metadata freeblks 0 "agf 0"
 force_crafted_metadata longest $bigval "agf 0"
-- 
2.31.1


^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PATCH v3 2/4] tests: increase xfs log size
  2022-08-30  4:44 [PATCH v3 0/4] tweaks for denying tiny xfs Murphy Zhou
  2022-08-30  4:44 ` [PATCH v3 1/4] tests: increase fs size for mkfs Murphy Zhou
@ 2022-08-30  4:44 ` Murphy Zhou
  2022-08-30  4:44 ` [PATCH v3 3/4] tests/xfs: remove single-AG options Murphy Zhou
  2022-08-30  4:44 ` [PATCH v3 4/4] xfs/144: remove testing root dir inode in AG 1 Murphy Zhou
  3 siblings, 0 replies; 20+ messages in thread
From: Murphy Zhou @ 2022-08-30  4:44 UTC (permalink / raw)
  To: fstests; +Cc: linux-xfs

Since this xfsprogs commit:
	6e0ed3d19c54 mkfs: stop allowing tiny filesystems
XFS requires filesystem log size bigger then 64m(so does AG size).

Increase thoese numbers to 64m at least.

Signed-off-by: Murphy Zhou <jencce.kernel@gmail.com>
---
 common/log            |    8 +-
 common/xfs            |    4 +-
 tests/generic/054.out | 1410 -----------------------------------------
 tests/generic/055.out |  126 ----
 tests/xfs/078         |    2 +-
 tests/xfs/171         |   10 +-
 tests/xfs/171.out     |    8 +-
 tests/xfs/172         |    4 +-
 tests/xfs/172.out     |    4 +-
 tests/xfs/173         |   10 +-
 tests/xfs/173.out     |    8 +-
 tests/xfs/206         |    2 +-
 tests/xfs/250         |    6 +-
 tests/xfs/259         |    2 +-
 tests/xfs/445         |    2 +-
 15 files changed, 36 insertions(+), 1570 deletions(-)

diff --git a/common/log b/common/log
index 154f3959..1b420046 100644
--- a/common/log
+++ b/common/log
@@ -334,7 +334,7 @@ _mkfs_log()
 {
     # create the FS
     # mkfs options to append to log size otion can be specified ($*)
-    export MKFS_OPTIONS="-l size=2000b -l lazy-count=1 $*"
+    export MKFS_OPTIONS="-l size=64m -l lazy-count=1 $*"
     _full "mkfs"
     _scratch_mkfs_xfs >>$seqres.full 2>&1
     if [ $? -ne 0 ] ; then 
@@ -542,17 +542,17 @@ _require_logstate()
     esac
 }
 
+# Due to minimum log size increased to 64m, small bugsize without bigger
+# su value causes mount to fail with:
+#    "logbuf size must be greater than or equal to log stripe size"
 _xfs_log_config()
 {
     echo "# mkfs-opt             mount-opt"
     echo "# ------------------------------"
-    echo "  version=2            logbsize=32k"
     echo "  version=2,su=4096    logbsize=32k"
     echo "  version=2,su=32768   logbsize=32k"
     echo "  version=2,su=32768   logbsize=64k"
-    echo "  version=2            logbsize=64k"
     echo "  version=2,su=64k     logbsize=64k"
-    echo "  version=2            logbsize=128k"
     echo "  version=2,su=128k    logbsize=128k"
     echo "  version=2            logbsize=256k"
     echo "  version=2,su=256k    logbsize=256k"
diff --git a/common/xfs b/common/xfs
index efabb0ad..8f0a4057 100644
--- a/common/xfs
+++ b/common/xfs
@@ -82,10 +82,10 @@ _scratch_find_xfs_min_logblocks()
 {
 	local mkfs_cmd="`_scratch_mkfs_xfs_opts`"
 
-	# The smallest log size we can specify is 2M (XFS_MIN_LOG_BYTES) so
+	# The smallest log size we can specify is 64M (XFS_MIN_LOG_BYTES) so
 	# pass that in and see if mkfs succeeds or tells us what is the
 	# minimum log size.
-	local XFS_MIN_LOG_BYTES=2097152
+	local XFS_MIN_LOG_BYTES=67108864
 
 	# Try formatting the filesystem with all the options given and the
 	# minimum log size.  We hope either that this succeeds or that mkfs
diff --git a/tests/generic/054.out b/tests/generic/054.out
index 4654bde7..d2b498f1 100644
--- a/tests/generic/054.out
+++ b/tests/generic/054.out
@@ -3290,1413 +3290,3 @@ clean log
 
 *** filesystem is checked ok ***
 
-
-*** mkfs ***
-
-
-*** mount ***
-
-
-*** ls SCRATCH_MNT ***
-
-00
-01
-02
-03
-04
-05
-06
-07
-08
-09
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-32
-33
-34
-35
-36
-37
-38
-39
-40
-41
-42
-43
-44
-45
-46
-47
-48
-49
-50
-51
-52
-53
-54
-55
-56
-57
-58
-59
-60
-61
-62
-63
-64
-65
-66
-67
-68
-69
-70
-71
-72
-73
-74
-75
-76
-77
-78
-79
-80
-81
-82
-83
-84
-85
-86
-87
-88
-89
-90
-91
-92
-93
-94
-95
-96
-97
-98
-99
-
-*** godown ***
-
-
-*** unmount ***
-
-
-*** logprint after going down... ***
-
-dirty log
-
-*** mount with replay ***
-
-
-*** ls SCRATCH_MNT ***
-
-00
-01
-02
-03
-04
-05
-06
-07
-08
-09
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-32
-33
-34
-35
-36
-37
-38
-39
-40
-41
-42
-43
-44
-45
-46
-47
-48
-49
-50
-51
-52
-53
-54
-55
-56
-57
-58
-59
-60
-61
-62
-63
-64
-65
-66
-67
-68
-69
-70
-71
-72
-73
-74
-75
-76
-77
-78
-79
-80
-81
-82
-83
-84
-85
-86
-87
-88
-89
-90
-91
-92
-93
-94
-95
-96
-97
-98
-99
-
-*** unmount ***
-
-
-*** logprint after mount and replay... ***
-
-clean log
-
-*** filesystem is checked ok ***
-
-
-*** mkfs ***
-
-
-*** mount ***
-
-
-*** ls SCRATCH_MNT ***
-
-00
-01
-02
-03
-04
-05
-06
-07
-08
-09
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-32
-33
-34
-35
-36
-37
-38
-39
-40
-41
-42
-43
-44
-45
-46
-47
-48
-49
-50
-51
-52
-53
-54
-55
-56
-57
-58
-59
-60
-61
-62
-63
-64
-65
-66
-67
-68
-69
-70
-71
-72
-73
-74
-75
-76
-77
-78
-79
-80
-81
-82
-83
-84
-85
-86
-87
-88
-89
-90
-91
-92
-93
-94
-95
-96
-97
-98
-99
-
-*** godown ***
-
-
-*** unmount ***
-
-
-*** logprint after going down... ***
-
-dirty log
-
-*** mount with replay ***
-
-
-*** ls SCRATCH_MNT ***
-
-00
-01
-02
-03
-04
-05
-06
-07
-08
-09
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-32
-33
-34
-35
-36
-37
-38
-39
-40
-41
-42
-43
-44
-45
-46
-47
-48
-49
-50
-51
-52
-53
-54
-55
-56
-57
-58
-59
-60
-61
-62
-63
-64
-65
-66
-67
-68
-69
-70
-71
-72
-73
-74
-75
-76
-77
-78
-79
-80
-81
-82
-83
-84
-85
-86
-87
-88
-89
-90
-91
-92
-93
-94
-95
-96
-97
-98
-99
-
-*** unmount ***
-
-
-*** logprint after mount and replay... ***
-
-clean log
-
-*** filesystem is checked ok ***
-
-
-*** mkfs ***
-
-
-*** mount ***
-
-
-*** ls SCRATCH_MNT ***
-
-00
-01
-02
-03
-04
-05
-06
-07
-08
-09
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-32
-33
-34
-35
-36
-37
-38
-39
-40
-41
-42
-43
-44
-45
-46
-47
-48
-49
-50
-51
-52
-53
-54
-55
-56
-57
-58
-59
-60
-61
-62
-63
-64
-65
-66
-67
-68
-69
-70
-71
-72
-73
-74
-75
-76
-77
-78
-79
-80
-81
-82
-83
-84
-85
-86
-87
-88
-89
-90
-91
-92
-93
-94
-95
-96
-97
-98
-99
-
-*** godown ***
-
-
-*** unmount ***
-
-
-*** logprint after going down... ***
-
-dirty log
-
-*** mount with replay ***
-
-
-*** ls SCRATCH_MNT ***
-
-00
-01
-02
-03
-04
-05
-06
-07
-08
-09
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-32
-33
-34
-35
-36
-37
-38
-39
-40
-41
-42
-43
-44
-45
-46
-47
-48
-49
-50
-51
-52
-53
-54
-55
-56
-57
-58
-59
-60
-61
-62
-63
-64
-65
-66
-67
-68
-69
-70
-71
-72
-73
-74
-75
-76
-77
-78
-79
-80
-81
-82
-83
-84
-85
-86
-87
-88
-89
-90
-91
-92
-93
-94
-95
-96
-97
-98
-99
-
-*** unmount ***
-
-
-*** logprint after mount and replay... ***
-
-clean log
-
-*** filesystem is checked ok ***
-
-
-*** mkfs ***
-
-
-*** mount ***
-
-
-*** ls SCRATCH_MNT ***
-
-00
-01
-02
-03
-04
-05
-06
-07
-08
-09
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-32
-33
-34
-35
-36
-37
-38
-39
-40
-41
-42
-43
-44
-45
-46
-47
-48
-49
-50
-51
-52
-53
-54
-55
-56
-57
-58
-59
-60
-61
-62
-63
-64
-65
-66
-67
-68
-69
-70
-71
-72
-73
-74
-75
-76
-77
-78
-79
-80
-81
-82
-83
-84
-85
-86
-87
-88
-89
-90
-91
-92
-93
-94
-95
-96
-97
-98
-99
-
-*** godown ***
-
-
-*** unmount ***
-
-
-*** logprint after going down... ***
-
-dirty log
-
-*** mount with replay ***
-
-
-*** ls SCRATCH_MNT ***
-
-00
-01
-02
-03
-04
-05
-06
-07
-08
-09
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-32
-33
-34
-35
-36
-37
-38
-39
-40
-41
-42
-43
-44
-45
-46
-47
-48
-49
-50
-51
-52
-53
-54
-55
-56
-57
-58
-59
-60
-61
-62
-63
-64
-65
-66
-67
-68
-69
-70
-71
-72
-73
-74
-75
-76
-77
-78
-79
-80
-81
-82
-83
-84
-85
-86
-87
-88
-89
-90
-91
-92
-93
-94
-95
-96
-97
-98
-99
-
-*** unmount ***
-
-
-*** logprint after mount and replay... ***
-
-clean log
-
-*** filesystem is checked ok ***
-
-
-*** mkfs ***
-
-
-*** mount ***
-
-
-*** ls SCRATCH_MNT ***
-
-00
-01
-02
-03
-04
-05
-06
-07
-08
-09
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-32
-33
-34
-35
-36
-37
-38
-39
-40
-41
-42
-43
-44
-45
-46
-47
-48
-49
-50
-51
-52
-53
-54
-55
-56
-57
-58
-59
-60
-61
-62
-63
-64
-65
-66
-67
-68
-69
-70
-71
-72
-73
-74
-75
-76
-77
-78
-79
-80
-81
-82
-83
-84
-85
-86
-87
-88
-89
-90
-91
-92
-93
-94
-95
-96
-97
-98
-99
-
-*** godown ***
-
-
-*** unmount ***
-
-
-*** logprint after going down... ***
-
-dirty log
-
-*** mount with replay ***
-
-
-*** ls SCRATCH_MNT ***
-
-00
-01
-02
-03
-04
-05
-06
-07
-08
-09
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-32
-33
-34
-35
-36
-37
-38
-39
-40
-41
-42
-43
-44
-45
-46
-47
-48
-49
-50
-51
-52
-53
-54
-55
-56
-57
-58
-59
-60
-61
-62
-63
-64
-65
-66
-67
-68
-69
-70
-71
-72
-73
-74
-75
-76
-77
-78
-79
-80
-81
-82
-83
-84
-85
-86
-87
-88
-89
-90
-91
-92
-93
-94
-95
-96
-97
-98
-99
-
-*** unmount ***
-
-
-*** logprint after mount and replay... ***
-
-clean log
-
-*** filesystem is checked ok ***
-
-
-*** mkfs ***
-
-
-*** mount ***
-
-
-*** ls SCRATCH_MNT ***
-
-00
-01
-02
-03
-04
-05
-06
-07
-08
-09
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-32
-33
-34
-35
-36
-37
-38
-39
-40
-41
-42
-43
-44
-45
-46
-47
-48
-49
-50
-51
-52
-53
-54
-55
-56
-57
-58
-59
-60
-61
-62
-63
-64
-65
-66
-67
-68
-69
-70
-71
-72
-73
-74
-75
-76
-77
-78
-79
-80
-81
-82
-83
-84
-85
-86
-87
-88
-89
-90
-91
-92
-93
-94
-95
-96
-97
-98
-99
-
-*** godown ***
-
-
-*** unmount ***
-
-
-*** logprint after going down... ***
-
-dirty log
-
-*** mount with replay ***
-
-
-*** ls SCRATCH_MNT ***
-
-00
-01
-02
-03
-04
-05
-06
-07
-08
-09
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-32
-33
-34
-35
-36
-37
-38
-39
-40
-41
-42
-43
-44
-45
-46
-47
-48
-49
-50
-51
-52
-53
-54
-55
-56
-57
-58
-59
-60
-61
-62
-63
-64
-65
-66
-67
-68
-69
-70
-71
-72
-73
-74
-75
-76
-77
-78
-79
-80
-81
-82
-83
-84
-85
-86
-87
-88
-89
-90
-91
-92
-93
-94
-95
-96
-97
-98
-99
-
-*** unmount ***
-
-
-*** logprint after mount and replay... ***
-
-clean log
-
-*** filesystem is checked ok ***
-
diff --git a/tests/generic/055.out b/tests/generic/055.out
index 048ef1e1..06aa6e5b 100644
--- a/tests/generic/055.out
+++ b/tests/generic/055.out
@@ -294,129 +294,3 @@ clean log
 
 *** filesystem is checked ok ***
 
-
-*** mkfs ***
-
-
-*** mount ***
-
-
-*** calling fsstress -p 4 -z -f rmdir=10 -f link=10 -f creat=10 -f mkdir=10            -f rename=30 -f stat=30 -f unlink=30 -f truncate=20 -m8 -n 10000 ***
-
-
-*** ls -RF SCRATCH_MNT ***
-
-
-*** godown ***
-
-
-*** unmount ***
-
-
-*** logprint after going down... ***
-
-dirty log
-
-*** mount with replay ***
-
-
-*** ls -RF SCRATCH_MNT ***
-
-
-*** diff ls before and after ***
-
-Files TMP.ls1 and TMP.ls2 are identical
-
-*** unmount ***
-
-
-*** logprint after mount and replay... ***
-
-clean log
-
-*** filesystem is checked ok ***
-
-
-*** mkfs ***
-
-
-*** mount ***
-
-
-*** calling fsstress -p 4 -z -f rmdir=10 -f link=10 -f creat=10 -f mkdir=10            -f rename=30 -f stat=30 -f unlink=30 -f truncate=20 -m8 -n 10000 ***
-
-
-*** ls -RF SCRATCH_MNT ***
-
-
-*** godown ***
-
-
-*** unmount ***
-
-
-*** logprint after going down... ***
-
-dirty log
-
-*** mount with replay ***
-
-
-*** ls -RF SCRATCH_MNT ***
-
-
-*** diff ls before and after ***
-
-Files TMP.ls1 and TMP.ls2 are identical
-
-*** unmount ***
-
-
-*** logprint after mount and replay... ***
-
-clean log
-
-*** filesystem is checked ok ***
-
-
-*** mkfs ***
-
-
-*** mount ***
-
-
-*** calling fsstress -p 4 -z -f rmdir=10 -f link=10 -f creat=10 -f mkdir=10            -f rename=30 -f stat=30 -f unlink=30 -f truncate=20 -m8 -n 10000 ***
-
-
-*** ls -RF SCRATCH_MNT ***
-
-
-*** godown ***
-
-
-*** unmount ***
-
-
-*** logprint after going down... ***
-
-dirty log
-
-*** mount with replay ***
-
-
-*** ls -RF SCRATCH_MNT ***
-
-
-*** diff ls before and after ***
-
-Files TMP.ls1 and TMP.ls2 are identical
-
-*** unmount ***
-
-
-*** logprint after mount and replay... ***
-
-clean log
-
-*** filesystem is checked ok ***
-
diff --git a/tests/xfs/078 b/tests/xfs/078
index 9a24086e..0ee07755 100755
--- a/tests/xfs/078
+++ b/tests/xfs/078
@@ -104,7 +104,7 @@ _grow_loop $((168024*4096)) 1376452608 4096 1
 
 # Some other blocksize cases...
 _grow_loop $((168024*4096)) 1376452608 2048 1
-_grow_loop $((168024*4096)) 1376452608 512 1 16m
+_grow_loop $((168024*4096)) 1376452608 512 1 70m
 _grow_loop $((168024*4096)) 688230400 1024 1
 
 # Other corner cases suggested by dgc
diff --git a/tests/xfs/171 b/tests/xfs/171
index f93b6011..8e622251 100755
--- a/tests/xfs/171
+++ b/tests/xfs/171
@@ -35,12 +35,12 @@ _set_stream_timeout_centisecs 12000
 # for small filesystems, so we make sure there's one more AG than filestreams
 # to encourage the allocator to skip whichever AG owns the log.
 #
-# This test exercises 64x 16MB AGs, 8 filestreams, 100 files per stream, and
+# This test exercises 64x 68MB AGs, 32 filestreams, 100 files per stream, and
 # 1MB per file.
-_test_streams 65 16 8 100 1 1 0
-_test_streams 65 16 8 100 1 1 1
-_test_streams 65 16 8 100 1 0 0
-_test_streams 65 16 8 100 1 0 1
+_test_streams 65 68 32 100 1 1 0
+_test_streams 65 68 32 100 1 1 1
+_test_streams 65 68 32 100 1 0 0
+_test_streams 65 68 32 100 1 0 1
 
 status=0
 exit
diff --git a/tests/xfs/171.out b/tests/xfs/171.out
index 73f73c90..e902e900 100644
--- a/tests/xfs/171.out
+++ b/tests/xfs/171.out
@@ -1,20 +1,20 @@
 QA output created by 171
-# testing 65 16 8 100 1 1 0 ....
+# testing 65 68 32 100 1 1 0 ....
 # streaming
 # sync AGs...
 # checking stream AGs...
 + passed, streams are in seperate AGs
-# testing 65 16 8 100 1 1 1 ....
+# testing 65 68 32 100 1 1 1 ....
 # streaming
 # sync AGs...
 # checking stream AGs...
 + passed, streams are in seperate AGs
-# testing 65 16 8 100 1 0 0 ....
+# testing 65 68 32 100 1 0 0 ....
 # streaming
 # sync AGs...
 # checking stream AGs...
 + passed, streams are in seperate AGs
-# testing 65 16 8 100 1 0 1 ....
+# testing 65 68 32 100 1 0 1 ....
 # streaming
 # sync AGs...
 # checking stream AGs...
diff --git a/tests/xfs/172 b/tests/xfs/172
index 56c2583b..1176f8c6 100755
--- a/tests/xfs/172
+++ b/tests/xfs/172
@@ -43,8 +43,8 @@ _check_filestreams_support || _notrun "filestreams not available"
 # for buffered, succeed for direct I/O.
 _set_stream_timeout_centisecs 50
 
-_test_streams 8 16 4 8 3 1 0 fail
-_test_streams 64 16 20 10 1 0 1
+_test_streams 8 68 4 8 12 1 0 fail
+_test_streams 64 68 20 10 4 0 1
 
 status=0
 exit
diff --git a/tests/xfs/172.out b/tests/xfs/172.out
index ec2bcf67..894200fd 100644
--- a/tests/xfs/172.out
+++ b/tests/xfs/172.out
@@ -1,10 +1,10 @@
 QA output created by 172
-# testing 8 16 4 8 3 1 0 fail ....
+# testing 8 68 4 8 12 1 0 fail ....
 # streaming
 # sync AGs...
 # checking stream AGs...
 + expected failure, matching AGs
-# testing 64 16 20 10 1 0 1 ....
+# testing 64 68 20 10 4 0 1 ....
 # streaming
 # sync AGs...
 # checking stream AGs...
diff --git a/tests/xfs/173 b/tests/xfs/173
index 6b18d919..62416d62 100755
--- a/tests/xfs/173
+++ b/tests/xfs/173
@@ -32,12 +32,12 @@ _set_stream_timeout_centisecs 12000
 # filesystems, so we make sure there's one more AG than filestreams to
 # encourage the allocator to skip whichever AG owns the log.
 #
-# Exercise 65x 16MB AGs, 32/33 filestreams, 8 files per stream, and 2MB per
+# Exercise 65x 68MB AGs, 32/33 filestreams, 8 files per stream, and 9MB per
 # file.
-_test_streams 65 16 34 8 2 1 1 fail
-_test_streams 65 16 32 8 2 0 1
-_test_streams 65 16 34 8 2 0 0 fail
-_test_streams 65 16 32 8 2 1 0
+_test_streams 65 68 34 8 9 1 1 fail
+_test_streams 65 68 32 8 9 0 1
+_test_streams 65 68 34 8 9 0 0 fail
+_test_streams 65 68 32 8 9 1 0
 
 status=0
 exit
diff --git a/tests/xfs/173.out b/tests/xfs/173.out
index 705c352a..accbb010 100644
--- a/tests/xfs/173.out
+++ b/tests/xfs/173.out
@@ -1,20 +1,20 @@
 QA output created by 173
-# testing 65 16 34 8 2 1 1 fail ....
+# testing 65 68 34 8 9 1 1 fail ....
 # streaming
 # sync AGs...
 # checking stream AGs...
 + expected failure, matching AGs
-# testing 65 16 32 8 2 0 1 ....
+# testing 65 68 32 8 9 0 1 ....
 # streaming
 # sync AGs...
 # checking stream AGs...
 + passed, streams are in seperate AGs
-# testing 65 16 34 8 2 0 0 fail ....
+# testing 65 68 34 8 9 0 0 fail ....
 # streaming
 # sync AGs...
 # checking stream AGs...
 + expected failure, matching AGs
-# testing 65 16 32 8 2 1 0 ....
+# testing 65 68 32 8 9 1 0 ....
 # streaming
 # sync AGs...
 # checking stream AGs...
diff --git a/tests/xfs/206 b/tests/xfs/206
index cb346b6d..a813ac44 100755
--- a/tests/xfs/206
+++ b/tests/xfs/206
@@ -69,7 +69,7 @@ mkfs_filter()
 
 # mkfs slightly smaller than that, small log for speed.
 echo "=== mkfs.xfs ==="
-mkfs.xfs -f -bsize=4096 -l size=32m -dagsize=76288719b,size=3905982455b \
+mkfs.xfs -f -bsize=4096 -l size=64m -dagsize=76288719b,size=3905982455b \
 	 $tmpfile  | mkfs_filter
 
 mount -o loop $tmpfile $tmpdir || _fail "!!! failed to loopback mount"
diff --git a/tests/xfs/250 b/tests/xfs/250
index 8af32711..48a1eb19 100755
--- a/tests/xfs/250
+++ b/tests/xfs/250
@@ -56,8 +56,10 @@ _test_loop()
 	$MKFS_XFS_PROG -d $dparam \
 		| _filter_mkfs 2>/dev/null
 
+	# _fail to avoid writing $TEST_DIR
 	echo "*** mount loop filesystem"
-	mount -t xfs -o loop $LOOP_DEV $LOOP_MNT
+	mount -t xfs -o loop $LOOP_DEV $LOOP_MNT ||
+		_fail "failed to mount loopback mount point"
 
 	echo "*** preallocate large file"
 	$XFS_IO_PROG -f -c "resvsp 0 $fsize" $LOOP_MNT/foo | _filter_io
@@ -69,7 +71,7 @@ _test_loop()
 	 _check_xfs_filesystem $LOOP_DEV none none
 }
 
-_test_loop 50g 16m 40G
+_test_loop 50g 68m 40G
 echo "*** done"
 status=0
 exit
diff --git a/tests/xfs/259 b/tests/xfs/259
index 88e2f3ee..8829e76b 100755
--- a/tests/xfs/259
+++ b/tests/xfs/259
@@ -49,7 +49,7 @@ for del in $sizes_to_check; do
 			>/dev/null 2>&1 || echo "dd failed"
 		lofile=$(losetup -f)
 		losetup $lofile "$testfile"
-		$MKFS_XFS_PROG -l size=32m -b size=$bs $lofile |  _filter_mkfs \
+		$MKFS_XFS_PROG -l size=64m -b size=$bs $lofile |  _filter_mkfs \
 			>/dev/null 2> $tmp.mkfs || echo "mkfs failed!"
 		. $tmp.mkfs
 		sync
diff --git a/tests/xfs/445 b/tests/xfs/445
index 9c55cac7..238d6514 100755
--- a/tests/xfs/445
+++ b/tests/xfs/445
@@ -47,7 +47,7 @@ _check_filestreams_support || _notrun "filestreams not available"
 unset SCRATCH_RTDEV
 
 # use small AGs for frequent stream switching
-_scratch_mkfs_xfs -d agsize=20m,size=2g >> $seqres.full 2>&1 ||
+_scratch_mkfs_xfs -d agsize=68m,size=2g >> $seqres.full 2>&1 ||
 	_fail "mkfs failed"
 _scratch_mount "-o filestreams"
 
-- 
2.31.1


^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PATCH v3 3/4] tests/xfs: remove single-AG options
  2022-08-30  4:44 [PATCH v3 0/4] tweaks for denying tiny xfs Murphy Zhou
  2022-08-30  4:44 ` [PATCH v3 1/4] tests: increase fs size for mkfs Murphy Zhou
  2022-08-30  4:44 ` [PATCH v3 2/4] tests: increase xfs log size Murphy Zhou
@ 2022-08-30  4:44 ` Murphy Zhou
  2022-08-30 13:42   ` Zorro Lang
  2022-08-30 15:05   ` Darrick J. Wong
  2022-08-30  4:44 ` [PATCH v3 4/4] xfs/144: remove testing root dir inode in AG 1 Murphy Zhou
  3 siblings, 2 replies; 20+ messages in thread
From: Murphy Zhou @ 2022-08-30  4:44 UTC (permalink / raw)
  To: fstests; +Cc: linux-xfs

Since this xfsprogs commit:
	6e0ed3d19c54 mkfs: stop allowing tiny filesystems
Single-AG xfs is not allowed.

Remove agcount=1 from mkfs options and xfs/202 entirely.

Signed-off-by: Murphy Zhou <jencce.kernel@gmail.com>
---
 tests/xfs/179     |  2 +-
 tests/xfs/202     | 40 ----------------------------------------
 tests/xfs/202.out | 29 -----------------------------
 tests/xfs/520     |  2 +-
 4 files changed, 2 insertions(+), 71 deletions(-)
 delete mode 100755 tests/xfs/202
 delete mode 100644 tests/xfs/202.out

diff --git a/tests/xfs/179 b/tests/xfs/179
index ec0cb7e5..f0169717 100755
--- a/tests/xfs/179
+++ b/tests/xfs/179
@@ -22,7 +22,7 @@ _require_cp_reflink
 _require_test_program "punch-alternating"
 
 echo "Format and mount"
-_scratch_mkfs -d agcount=1 > $seqres.full 2>&1
+_scratch_mkfs > $seqres.full 2>&1
 _scratch_mount >> $seqres.full 2>&1
 
 testdir=$SCRATCH_MNT/test-$seq
diff --git a/tests/xfs/202 b/tests/xfs/202
deleted file mode 100755
index 5075d3a1..00000000
--- a/tests/xfs/202
+++ /dev/null
@@ -1,40 +0,0 @@
-#! /bin/bash
-# SPDX-License-Identifier: GPL-2.0
-# Copyright (c) 2009 Christoph Hellwig.
-#
-# FS QA Test No. 202
-#
-# Test out the xfs_repair -o force_geometry option on single-AG filesystems.
-#
-. ./common/preamble
-_begin_fstest repair auto quick
-
-# Import common functions.
-. ./common/filter
-. ./common/repair
-
-# real QA test starts here
-_supported_fs xfs
-
-# single AG will cause default xfs_repair to fail. This test is actually
-# testing the special corner case option needed to repair a single AG fs.
-_require_scratch_nocheck
-
-#
-# The AG size is limited to 1TB (or even less with historic xfsprogs),
-# so chose a small enough filesystem to make sure we can actually create
-# a single AG filesystem.
-#
-echo "== Creating single-AG filesystem =="
-_scratch_mkfs_xfs -d agcount=1 -d size=$((1024*1024*1024)) >/dev/null 2>&1 \
- || _fail "!!! failed to make filesystem with single AG"
-
-echo "== Trying to repair it (should fail) =="
-_scratch_xfs_repair
-
-echo "== Trying to repair it with -o force_geometry =="
-_scratch_xfs_repair -o force_geometry 2>&1 | _filter_repair
-
-# success, all done
-echo "*** done"
-status=0
diff --git a/tests/xfs/202.out b/tests/xfs/202.out
deleted file mode 100644
index c2c5c881..00000000
--- a/tests/xfs/202.out
+++ /dev/null
@@ -1,29 +0,0 @@
-QA output created by 202
-== Creating single-AG filesystem ==
-== Trying to repair it (should fail) ==
-Phase 1 - find and verify superblock...
-Only one AG detected - cannot validate filesystem geometry.
-Use the -o force_geometry option to proceed.
-== Trying to repair it with -o force_geometry ==
-Phase 1 - find and verify superblock...
-Phase 2 - using <TYPEOF> log
-        - zero log...
-        - scan filesystem freespace and inode maps...
-        - found root inode chunk
-Phase 3 - for each AG...
-        - scan and clear agi unlinked lists...
-        - process known inodes and perform inode discovery...
-        - process newly discovered inodes...
-Phase 4 - check for duplicate blocks...
-        - setting up duplicate extent list...
-        - check for inodes claiming duplicate blocks...
-Phase 5 - rebuild AG headers and trees...
-        - reset superblock...
-Phase 6 - check inode connectivity...
-        - resetting contents of realtime bitmap and summary inodes
-        - traversing filesystem ...
-        - traversal finished ...
-        - moving disconnected inodes to lost+found ...
-Phase 7 - verify and correct link counts...
-done
-*** done
diff --git a/tests/xfs/520 b/tests/xfs/520
index d9e252bd..de70db60 100755
--- a/tests/xfs/520
+++ b/tests/xfs/520
@@ -60,7 +60,7 @@ force_crafted_metadata() {
 }
 
 bigval=100000000
-fsdsopt="-d agcount=1,size=512m"
+fsdsopt="-d size=512m"
 
 force_crafted_metadata freeblks 0 "agf 0"
 force_crafted_metadata longest $bigval "agf 0"
-- 
2.31.1


^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PATCH v3 4/4] xfs/144: remove testing root dir inode in AG 1
  2022-08-30  4:44 [PATCH v3 0/4] tweaks for denying tiny xfs Murphy Zhou
                   ` (2 preceding siblings ...)
  2022-08-30  4:44 ` [PATCH v3 3/4] tests/xfs: remove single-AG options Murphy Zhou
@ 2022-08-30  4:44 ` Murphy Zhou
  2022-08-30  7:49   ` Zorro Lang
  3 siblings, 1 reply; 20+ messages in thread
From: Murphy Zhou @ 2022-08-30  4:44 UTC (permalink / raw)
  To: fstests; +Cc: linux-xfs

Since this xfsprogs commit
  1b580a773 mkfs: don't let internal logs bump the root dir inode chunk to AG 1
this operation is not allowed.

Signed-off-by: Murphy Zhou <jencce.kernel@gmail.com>
---
 tests/xfs/144 | 10 +---------
 1 file changed, 1 insertion(+), 9 deletions(-)

diff --git a/tests/xfs/144 b/tests/xfs/144
index 706aff61..3f80d0ee 100755
--- a/tests/xfs/144
+++ b/tests/xfs/144
@@ -17,9 +17,6 @@ _begin_fstest auto mkfs
 _supported_fs xfs
 _require_test
 
-# The last testcase creates a (sparse) fs image with a 2GB log, so we need
-# 3GB to avoid failing the mkfs due to ENOSPC.
-_require_fs_space $TEST_DIR $((3 * 1048576))
 echo Silence is golden
 
 testfile=$TEST_DIR/a
@@ -36,7 +33,7 @@ test_format() {
 }
 
 # First we try various small filesystems and stripe sizes.
-for M in `seq 298 302` `seq 490 520`; do
+for M in `seq 1024 1030` ; do
 	for S in `seq 32 4 64`; do
 		test_format "M=$M S=$S" -dsu=${S}k,sw=1,size=${M}m -N
 	done
@@ -45,11 +42,6 @@ done
 # log end rounded beyond EOAG due to stripe unit
 test_format "log end beyond eoag" -d agcount=3200,size=6366g -d su=256k,sw=4 -N
 
-# Log so large it pushes the root dir into AG 1.  We can't use -N for the mkfs
-# because this check only occurs after the root directory has been allocated,
-# which mkfs -N doesn't do.
-test_format "log pushes rootdir into AG 1" -d agcount=3200,size=6366g -lagnum=0
-
 # success, all done
 status=0
 exit
-- 
2.31.1


^ permalink raw reply related	[flat|nested] 20+ messages in thread

* Re: [PATCH v3 1/4] tests: increase fs size for mkfs
  2022-08-30  4:44 ` [PATCH v3 1/4] tests: increase fs size for mkfs Murphy Zhou
@ 2022-08-30  7:36   ` Zorro Lang
  2022-08-30 14:46     ` Darrick J. Wong
  0 siblings, 1 reply; 20+ messages in thread
From: Zorro Lang @ 2022-08-30  7:36 UTC (permalink / raw)
  To: Murphy Zhou; +Cc: fstests, linux-xfs

On Tue, Aug 30, 2022 at 12:44:30PM +0800, Murphy Zhou wrote:
> Since this xfsprogs commit:
> 	6e0ed3d19c54 mkfs: stop allowing tiny filesystems
> XFS requires filesystem size bigger then 300m.

I'm wondering if we can just use 300M, or 512M is better. CC linux-xfs to
get more discussion about how to deal with this change on mkfs.xfs.

> 
> Increase thoese numbers to 512M at least. There is no special
> reason for the magic number 512, just double it from original
> 256M and being reasonable small.

Hmm... do we need a global parameter to define the minimal XFS size,
or even minimal local fs size? e.g. MIN_XFS_SIZE, or MIN_FS_SIZE ...

> 
> Signed-off-by: Murphy Zhou <jencce.kernel@gmail.com>
> ---
>  common/config         |  2 +-
>  common/xfs            |  2 +-
>  tests/generic/015     |  2 +-
>  tests/generic/027     |  2 +-
>  tests/generic/042     |  3 +++
>  tests/generic/077     |  2 +-
>  tests/generic/081     |  6 +++---
>  tests/generic/083     |  2 +-
>  tests/generic/085     |  2 +-
>  tests/generic/108     |  4 ++--
>  tests/generic/204     |  2 +-
>  tests/generic/226     |  2 +-
>  tests/generic/250     |  2 +-
>  tests/generic/252     |  2 +-
>  tests/generic/371     |  2 +-
>  tests/generic/387     |  2 +-
>  tests/generic/416     |  2 +-
>  tests/generic/416.out |  2 +-
>  tests/generic/427     |  2 +-
>  tests/generic/449     |  2 +-
>  tests/generic/455     |  2 +-
>  tests/generic/457     |  2 +-
>  tests/generic/482     |  2 +-
>  tests/generic/511     |  2 +-
>  tests/generic/520     |  4 ++--
>  tests/generic/536     |  2 +-
>  tests/generic/619     |  2 +-
>  tests/generic/626     |  2 +-
>  tests/xfs/002         |  2 +-
>  tests/xfs/015         |  2 +-
>  tests/xfs/041         |  8 ++++----
>  tests/xfs/041.out     | 10 +++++-----
>  tests/xfs/042         |  2 +-
>  tests/xfs/049         |  2 +-
>  tests/xfs/073         |  2 +-
>  tests/xfs/076         |  2 +-
>  tests/xfs/078         |  6 +++---
>  tests/xfs/078.out     | 23 +++++++++++------------
>  tests/xfs/104         |  6 +++---
>  tests/xfs/104.out     | 30 ------------------------------
>  tests/xfs/107         |  4 ++--
>  tests/xfs/118         |  4 ++--
>  tests/xfs/148         |  2 +-
>  tests/xfs/149         | 12 ++++++------
>  tests/xfs/168         |  2 +-
>  tests/xfs/170         | 10 +++++-----
>  tests/xfs/170.out     |  8 ++++----
>  tests/xfs/174         |  4 ++--
>  tests/xfs/174.out     |  4 ++--
>  tests/xfs/176         |  2 +-
>  tests/xfs/205         |  2 +-
>  tests/xfs/227         |  2 +-
>  tests/xfs/233         |  2 +-
>  tests/xfs/279         |  6 +++---
>  tests/xfs/289         | 22 +++++++++++-----------
>  tests/xfs/291         |  4 ++--
>  tests/xfs/306         |  2 +-
>  tests/xfs/514         |  2 +-
>  tests/xfs/520         |  2 +-
>  59 files changed, 114 insertions(+), 142 deletions(-)
> 
> diff --git a/common/config b/common/config
> index c30eec6d..45b7650b 100644
> --- a/common/config
> +++ b/common/config
> @@ -325,7 +325,7 @@ fi
>  if [ "$FSTYP" == "xfs" ]; then
>  	XFS_MKFS_HAS_NO_META_SUPPORT=""
>  	touch /tmp/crc_check.img
> -	$MKFS_XFS_PROG -N -d file,name=/tmp/crc_check.img,size=32m -m crc=0 \
> +	$MKFS_XFS_PROG -N -d file,name=/tmp/crc_check.img,size=512m -m crc=0 \
>  		>/dev/null 2>&1;
>  	if [ $? -ne 0 ]; then
>  		XFS_MKFS_HAS_NO_META_SUPPORT=true
> diff --git a/common/xfs b/common/xfs
> index 9f84dffb..efabb0ad 100644
> --- a/common/xfs
> +++ b/common/xfs
> @@ -1176,7 +1176,7 @@ _require_xfs_copy()
>  	# xfs_copy on v5 filesystems do not require the "-d" option if xfs_db
>  	# can change the UUID on v5 filesystems
>  	touch /tmp/$$.img
> -	$MKFS_XFS_PROG -d file,name=/tmp/$$.img,size=64m >/dev/null 2>&1
> +	$MKFS_XFS_PROG -d file,name=/tmp/$$.img,size=512m >/dev/null 2>&1
>  
>  	# xfs_db will return 0 even if it can't generate a new uuid, so
>  	# check the output to make sure if it can change UUID of V5 xfs
> diff --git a/tests/generic/015 b/tests/generic/015
> index 10423a29..f6804897 100755
> --- a/tests/generic/015
> +++ b/tests/generic/015
> @@ -31,7 +31,7 @@ _require_no_large_scratch_dev
>  
>  # btrfs needs at least 256MB (with upward round off) to create a non-mixed mode
>  # fs. Ref: btrfs-progs: btrfs_min_dev_size()
> -_scratch_mkfs_sized $((256 * 1024 * 1024)) >> $seqres.full 2>&1 \
> +_scratch_mkfs_sized $((512 * 1024 * 1024)) >> $seqres.full 2>&1 \

As you change the 256 to 512 at here, better to change above comment which says
why 256M is needed.

>      || _fail "mkfs failed"
>  _scratch_mount
>  out=$SCRATCH_MNT/fillup.$$
> diff --git a/tests/generic/027 b/tests/generic/027
> index 47f1981d..ad8175c1 100755
> --- a/tests/generic/027
> +++ b/tests/generic/027
> @@ -35,7 +35,7 @@ _require_scratch
>  
>  echo "Silence is golden"
>  
> -_scratch_mkfs_sized $((256 * 1024 * 1024)) >>$seqres.full 2>&1
> +_scratch_mkfs_sized $((512 * 1024 * 1024)) >>$seqres.full 2>&1
>  _scratch_mount
>  
>  echo "Reserve 2M space" >>$seqres.full
> diff --git a/tests/generic/042 b/tests/generic/042
> index dbc65e33..54f883cd 100755
> --- a/tests/generic/042
> +++ b/tests/generic/042
> @@ -32,8 +32,11 @@ _crashtest()
>  	# f2fs-utils 1.9.0 needs at least 38 MB space for f2fs image. However,
>  	# f2fs-utils 1.14.0 needs at least 52 MB. Not sure if it will change
>  	# again. So just set it 128M.
> +	# xfsprogs 5.19.0 requires xfs size larger then 300m.
>  	if [ $FSTYP == "f2fs" ]; then
>  		size=128M
> +	elif [ $FSTYP == "xfs" ]; then
> +		size=512M
>  	fi
>  
>  	# Create an fs on a small, initialized image. The pattern is written to
> diff --git a/tests/generic/077 b/tests/generic/077
> index 94d89fae..639564ed 100755
> --- a/tests/generic/077
> +++ b/tests/generic/077
> @@ -49,7 +49,7 @@ echo "*** create filesystem"
>  _scratch_unmount >/dev/null 2>&1
>  echo "*** MKFS ***"                         >>$seqres.full
>  echo ""                                     >>$seqres.full
> -fs_size=$((256 * 1024 * 1024))
> +fs_size=$((512 * 1024 * 1024))
>  _scratch_mkfs_sized $fs_size >> $seqres.full 2>&1 || _fail "mkfs failed"
>  _scratch_mount
>  mkdir $SCRATCH_MNT/subdir
> diff --git a/tests/generic/081 b/tests/generic/081
> index 22ac94de..4901ae2d 100755
> --- a/tests/generic/081
> +++ b/tests/generic/081
> @@ -62,13 +62,13 @@ snapname=snap_$seq
>  mnt=$TEST_DIR/mnt_$seq
>  mkdir -p $mnt
>  
> -# make sure there's enough disk space for 256M lv, test for 300M here in case
> +# make sure there's enough disk space for 400 lv, test for 512M here in case
>  # lvm uses some space for metadata
> -_scratch_mkfs_sized $((300 * 1024 * 1024)) >>$seqres.full 2>&1
> +_scratch_mkfs_sized $((512 * 1024 * 1024)) >>$seqres.full 2>&1
>  $LVM_PROG vgcreate -f $vgname $SCRATCH_DEV >>$seqres.full 2>&1
>  # We use yes pipe instead of 'lvcreate --yes' because old version of lvm
>  # (like 2.02.95 in RHEL6) don't support --yes option
> -yes | $LVM_PROG lvcreate -L 256M -n $lvname $vgname >>$seqres.full 2>&1
> +yes | $LVM_PROG lvcreate -L 400M -n $lvname $vgname >>$seqres.full 2>&1
>  # wait for lvcreation to fully complete
>  $UDEV_SETTLE_PROG >>$seqres.full 2>&1
>  
> diff --git a/tests/generic/083 b/tests/generic/083
> index 2a5af3cc..4c79538c 100755
> --- a/tests/generic/083
> +++ b/tests/generic/083
> @@ -62,7 +62,7 @@ workout()
>  
>  echo "*** test out-of-space handling for random write operations"
>  
> -filesize=`expr 256 \* 1024 \* 1024`
> +filesize=`expr 512 \* 1024 \* 1024`
>  agcount=6
>  numprocs=15
>  numops=1500
> diff --git a/tests/generic/085 b/tests/generic/085
> index 786d8e6f..006fcb5d 100755
> --- a/tests/generic/085
> +++ b/tests/generic/085
> @@ -50,7 +50,7 @@ setup_dmdev()
>  
>  echo "Silence is golden"
>  
> -size=$((256 * 1024 * 1024))
> +size=$((512 * 1024 * 1024))
>  size_in_sector=$((size / 512))
>  _scratch_mkfs_sized $size >>$seqres.full 2>&1
>  
> diff --git a/tests/generic/108 b/tests/generic/108
> index efe66ba5..dc6614d2 100755
> --- a/tests/generic/108
> +++ b/tests/generic/108
> @@ -46,7 +46,7 @@ physical=`blockdev --getpbsz $SCRATCH_DEV`
>  logical=`blockdev --getss $SCRATCH_DEV`
>  
>  # _get_scsi_debug_dev returns a scsi debug device with 128M in size by default
> -SCSI_DEBUG_DEV=`_get_scsi_debug_dev ${physical:-512} ${logical:-512} 0 300`
> +SCSI_DEBUG_DEV=`_get_scsi_debug_dev ${physical:-512} ${logical:-512} 0 512`
>  test -b "$SCSI_DEBUG_DEV" || _notrun "Failed to initialize scsi debug device"
>  echo "SCSI debug device $SCSI_DEBUG_DEV" >>$seqres.full
>  
> @@ -55,7 +55,7 @@ $LVM_PROG pvcreate -f $SCSI_DEBUG_DEV $SCRATCH_DEV >>$seqres.full 2>&1
>  $LVM_PROG vgcreate -f $vgname $SCSI_DEBUG_DEV $SCRATCH_DEV >>$seqres.full 2>&1
>  # We use yes pipe instead of 'lvcreate --yes' because old version of lvm
>  # (like 2.02.95 in RHEL6) don't support --yes option
> -yes | $LVM_PROG lvcreate -i 2 -I 4m -L 275m -n $lvname $vgname \
> +yes | $LVM_PROG lvcreate -i 2 -I 4m -L 400m -n $lvname $vgname \
>  	>>$seqres.full 2>&1
>  # wait for lv creation to fully complete
>  $UDEV_SETTLE_PROG >>$seqres.full 2>&1
> diff --git a/tests/generic/204 b/tests/generic/204
> index a33a090f..3589b084 100755
> --- a/tests/generic/204
> +++ b/tests/generic/204
> @@ -30,7 +30,7 @@ _require_scratch
>  # time solves this problem.
>  [ $FSTYP = "xfs" ] && MKFS_OPTIONS="$MKFS_OPTIONS -l size=16m -i maxpct=50"
>  
> -SIZE=`expr 115 \* 1024 \* 1024`
> +SIZE=`expr 512 \* 1024 \* 1024`
>  _scratch_mkfs_sized $SIZE 2> /dev/null > $tmp.mkfs.raw
>  cat $tmp.mkfs.raw | _filter_mkfs 2> $tmp.mkfs > /dev/null
>  _scratch_mount
> diff --git a/tests/generic/226 b/tests/generic/226
> index 34434730..d814b365 100755
> --- a/tests/generic/226
> +++ b/tests/generic/226
> @@ -19,7 +19,7 @@ _require_odirect
>  
>  _scratch_unmount 2>/dev/null
>  echo "--> mkfs 256m filesystem"
> -_scratch_mkfs_sized `expr 256 \* 1024 \* 1024` >> $seqres.full 2>&1
> +_scratch_mkfs_sized `expr 512 \* 1024 \* 1024` >> $seqres.full 2>&1
>  _scratch_mount
>  
>  loops=16
> diff --git a/tests/generic/250 b/tests/generic/250
> index 97e9522f..bd1c6ffd 100755
> --- a/tests/generic/250
> +++ b/tests/generic/250
> @@ -32,7 +32,7 @@ _require_odirect
>  # bitmap consuming all the free space in our small data device.
>  unset SCRATCH_RTDEV
>  
> -fssize=$((196 * 1048576))
> +fssize=$((512 * 1048576))
>  echo "Format and mount"
>  $XFS_IO_PROG -d -c "pwrite -S 0x69 -b 1048576 0 $fssize" $SCRATCH_DEV >> $seqres.full
>  _scratch_mkfs_sized $fssize > $seqres.full 2>&1
> diff --git a/tests/generic/252 b/tests/generic/252
> index 8c5adb53..93ab5242 100755
> --- a/tests/generic/252
> +++ b/tests/generic/252
> @@ -33,7 +33,7 @@ AIO_TEST="$here/src/aio-dio-regress/aiocp"
>  # bitmap consuming all the free space in our small data device.
>  unset SCRATCH_RTDEV
>  
> -fssize=$((196 * 1048576))
> +fssize=$((512 * 1048576))
>  echo "Format and mount"
>  $XFS_IO_PROG -d -c "pwrite -S 0x69 -b 1048576 0 $fssize" $SCRATCH_DEV >> $seqres.full
>  _scratch_mkfs_sized $fssize > $seqres.full 2>&1
> diff --git a/tests/generic/371 b/tests/generic/371
> index a2fdaf7b..538df647 100755
> --- a/tests/generic/371
> +++ b/tests/generic/371
> @@ -20,7 +20,7 @@ _require_scratch
>  _require_xfs_io_command "falloc"
>  test "$FSTYP" = "xfs" && _require_xfs_io_command "extsize"
>  
> -_scratch_mkfs_sized $((256 * 1024 * 1024)) >> $seqres.full 2>&1
> +_scratch_mkfs_sized $((512 * 1024 * 1024)) >> $seqres.full 2>&1
>  _scratch_mount
>  
>  # Disable speculative post-EOF preallocation on XFS, which can grow fast enough
> diff --git a/tests/generic/387 b/tests/generic/387
> index 25ca86bb..0546b7de 100755
> --- a/tests/generic/387
> +++ b/tests/generic/387
> @@ -19,7 +19,7 @@ _supported_fs generic
>  _require_scratch_reflink
>  
>  #btrfs needs 256mb to create default blockgroup fs
> -_scratch_mkfs_sized $((256 * 1024 * 1024)) >> $seqres.full 2>&1
> +_scratch_mkfs_sized $((512 * 1024 * 1024)) >> $seqres.full 2>&1
>  _scratch_mount
>  
>  testfile=$SCRATCH_MNT/testfile
> diff --git a/tests/generic/416 b/tests/generic/416
> index deb05f07..24fdb737 100755
> --- a/tests/generic/416
> +++ b/tests/generic/416
> @@ -21,7 +21,7 @@ _begin_fstest auto enospc
>  _supported_fs generic
>  _require_scratch
>  
> -fs_size=$((128 * 1024 * 1024))
> +fs_size=$((512 * 1024 * 1024))
>  page_size=$(get_page_size)
>  
>  # We will never reach this number though
> diff --git a/tests/generic/416.out b/tests/generic/416.out
> index 8d2ffacf..8f12447d 100644
> --- a/tests/generic/416.out
> +++ b/tests/generic/416.out
> @@ -1,3 +1,3 @@
>  QA output created by 416
> -wrote 16777216/16777216 bytes at offset 0
> +wrote 67108864/67108864 bytes at offset 0
>  XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
> diff --git a/tests/generic/427 b/tests/generic/427
> index 26385d36..4f44c2ea 100755
> --- a/tests/generic/427
> +++ b/tests/generic/427
> @@ -27,7 +27,7 @@ _require_aiodio aio-dio-eof-race
>  _require_no_compress
>  
>  # limit the filesystem size, to save the time of filling filesystem
> -_scratch_mkfs_sized $((256 * 1024 * 1024)) >>$seqres.full 2>&1
> +_scratch_mkfs_sized $((512 * 1024 * 1024)) >>$seqres.full 2>&1
>  _scratch_mount
>  
>  # try to write more bytes than filesystem size to fill the filesystem,
> diff --git a/tests/generic/449 b/tests/generic/449
> index 2b77a6a4..aebb5620 100755
> --- a/tests/generic/449
> +++ b/tests/generic/449
> @@ -24,7 +24,7 @@ _require_test
>  _require_acls
>  _require_attrs trusted
>  
> -_scratch_mkfs_sized $((256 * 1024 * 1024)) >> $seqres.full 2>&1
> +_scratch_mkfs_sized $((512 * 1024 * 1024)) >> $seqres.full 2>&1
>  _scratch_mount || _fail "mount failed"
>  
>  # This is a test of xattr behavior when we run out of disk space for xattrs,
> diff --git a/tests/generic/455 b/tests/generic/455
> index 649b5410..128e87d5 100755
> --- a/tests/generic/455
> +++ b/tests/generic/455
> @@ -51,7 +51,7 @@ SANITY_DIR=$TEST_DIR/fsxtests
>  rm -rf $SANITY_DIR
>  mkdir $SANITY_DIR
>  
> -devsize=$((1024*1024*200 / 512))        # 200m phys/virt size
> +devsize=$((1024*1024*512 / 512))        # 512m phys/virt size
>  csize=$((1024*64 / 512))                # 64k cluster size
>  lowspace=$((1024*1024 / 512))           # 1m low space threshold
>  
> diff --git a/tests/generic/457 b/tests/generic/457
> index da75798f..8604d5c5 100755
> --- a/tests/generic/457
> +++ b/tests/generic/457
> @@ -55,7 +55,7 @@ SANITY_DIR=$TEST_DIR/fsxtests
>  rm -rf $SANITY_DIR
>  mkdir $SANITY_DIR
>  
> -devsize=$((1024*1024*200 / 512))        # 200m phys/virt size
> +devsize=$((1024*1024*512 / 512))        # 512m phys/virt size
>  csize=$((1024*64 / 512))                # 64k cluster size
>  lowspace=$((1024*1024 / 512))           # 1m low space threshold
>  
> diff --git a/tests/generic/482 b/tests/generic/482
> index 28c83a23..011e605d 100755
> --- a/tests/generic/482
> +++ b/tests/generic/482
> @@ -64,7 +64,7 @@ if [ $nr_cpus -gt 8 ]; then
>  fi
>  fsstress_args=$(_scale_fsstress_args -w -d $SCRATCH_MNT -n 512 -p $nr_cpus \
>  		$FSSTRESS_AVOID)
> -devsize=$((1024*1024*200 / 512))	# 200m phys/virt size
> +devsize=$((1024*1024*512 / 512))	# 512m phys/virt size
>  csize=$((1024*64 / 512))		# 64k cluster size
>  lowspace=$((1024*1024 / 512))		# 1m low space threshold
>  
> diff --git a/tests/generic/511 b/tests/generic/511
> index 058d8401..8b1209d3 100755
> --- a/tests/generic/511
> +++ b/tests/generic/511
> @@ -19,7 +19,7 @@ _require_scratch
>  _require_xfs_io_command "falloc" "-k"
>  _require_xfs_io_command "fzero"
>  
> -_scratch_mkfs_sized $((1024 * 1024 * 256)) >>$seqres.full 2>&1
> +_scratch_mkfs_sized $((1024 * 1024 * 512)) >>$seqres.full 2>&1
>  _scratch_mount
>  
>  $XFS_IO_PROG -fc "pwrite 0 256m" -c fsync $SCRATCH_MNT/file >>$seqres.full 2>&1
> diff --git a/tests/generic/520 b/tests/generic/520
> index ad6764c7..2a96dce1 100755
> --- a/tests/generic/520
> +++ b/tests/generic/520
> @@ -24,8 +24,8 @@ _cleanup()
>  . ./common/filter
>  . ./common/dmflakey
>  
> -# 256MB in byte
> -fssize=$((2**20 * 256))
> +# 512MB in byte
> +fssize=$((2**20 * 512))
>  
>  # real QA test starts here
>  _supported_fs generic
> diff --git a/tests/generic/536 b/tests/generic/536
> index 986ea1ee..aac05587 100755
> --- a/tests/generic/536
> +++ b/tests/generic/536
> @@ -21,7 +21,7 @@ _require_scratch
>  _require_scratch_shutdown
>  
>  # create a small fs and initialize free blocks with a unique pattern
> -_scratch_mkfs_sized $((1024 * 1024 * 100)) >> $seqres.full 2>&1
> +_scratch_mkfs_sized $((1024 * 1024 * 512)) >> $seqres.full 2>&1
>  _scratch_mount
>  $XFS_IO_PROG -f -c "pwrite -S 0xab 0 100m" -c fsync $SCRATCH_MNT/spc \
>  	>> $seqres.full 2>&1
> diff --git a/tests/generic/619 b/tests/generic/619
> index 6e42d677..1e883394 100755
> --- a/tests/generic/619
> +++ b/tests/generic/619
> @@ -26,7 +26,7 @@
>  . ./common/preamble
>  _begin_fstest auto rw enospc
>  
> -FS_SIZE=$((240*1024*1024)) # 240MB
> +FS_SIZE=$((512*1024*1024)) # 512MB
>  DEBUG=1 # set to 0 to disable debug statements in shell and c-prog
>  FACT=0.7
>  
> diff --git a/tests/generic/626 b/tests/generic/626
> index 7e577798..a0411f01 100755
> --- a/tests/generic/626
> +++ b/tests/generic/626
> @@ -22,7 +22,7 @@ _supported_fs generic
>  _require_scratch
>  _require_renameat2 whiteout
>  
> -_scratch_mkfs_sized $((256 * 1024 * 1024)) >> $seqres.full 2>&1
> +_scratch_mkfs_sized $((512 * 1024 * 1024)) >> $seqres.full 2>&1
>  _scratch_mount
>  
>  # Create lots of files, to help to trigger the bug easily
> diff --git a/tests/xfs/002 b/tests/xfs/002
> index 6c0bb4d0..53dc8b57 100755
> --- a/tests/xfs/002
> +++ b/tests/xfs/002
> @@ -27,7 +27,7 @@ _require_no_large_scratch_dev
>  # So we can explicitly turn it _off_:
>  _require_xfs_mkfs_crc
>  
> -_scratch_mkfs_xfs -m crc=0 -d size=128m >> $seqres.full 2>&1 || _fail "mkfs failed"
> +_scratch_mkfs_xfs -m crc=0 -d size=512m >> $seqres.full 2>&1 || _fail "mkfs failed"
>  
>  # Scribble past a couple V4 secondary superblocks to populate sb_crc
>  # (We can't write to the structure member because it doesn't exist
> diff --git a/tests/xfs/015 b/tests/xfs/015
> index 2bb7b8d5..1f487cae 100755
> --- a/tests/xfs/015
> +++ b/tests/xfs/015
> @@ -43,7 +43,7 @@ _scratch_mount
>  _require_fs_space $SCRATCH_MNT 131072
>  _scratch_unmount
>  
> -_scratch_mkfs_sized $((32 * 1024 * 1024)) > $tmp.mkfs.raw || _fail "mkfs failed"
> +_scratch_mkfs_sized $((512 * 1024 * 1024)) > $tmp.mkfs.raw || _fail "mkfs failed"
>  cat $tmp.mkfs.raw | _filter_mkfs >$seqres.full 2>$tmp.mkfs
>  # get original data blocks number and agcount
>  . $tmp.mkfs
> diff --git a/tests/xfs/041 b/tests/xfs/041
> index 05de5578..5173cfe5 100755
> --- a/tests/xfs/041
> +++ b/tests/xfs/041
> @@ -38,10 +38,10 @@ _fill()
>  }
>  
>  _do_die_on_error=message_only
> -agsize=32
> +agsize=512
>  echo -n "Make $agsize megabyte filesystem on SCRATCH_DEV and mount... "
> -_scratch_mkfs_xfs -dsize=${agsize}m,agcount=1 2>&1 >/dev/null || _fail "mkfs failed"
> -bsize=`_scratch_mkfs_xfs -dsize=${agsize}m,agcount=1 2>&1 | _filter_mkfs 2>&1 \
> +_scratch_mkfs_xfs -dsize=${agsize}m,agcount=2 2>&1 >/dev/null || _fail "mkfs failed"
> +bsize=`_scratch_mkfs_xfs -dsize=${agsize}m,agcount=2 2>&1 | _filter_mkfs 2>&1 \
>  		| perl -ne 'if (/dbsize=(\d+)/) {print $1;}'`
>  onemeginblocks=`expr 1048576 / $bsize`
>  _scratch_mount
> @@ -51,7 +51,7 @@ echo "done"
>  # full allocation group -> partial; partial -> expand partial + new partial;
>  # partial -> expand partial; partial -> full
>  # cycle through 33m -> 67m -> 75m -> 96m
> -for size in 33 67 75 96
> +for size in 513 1027 1059 1536

Above comment need to be changed too.

>  do
>      grow_size=`expr $size \* $onemeginblocks`
>      _fill $SCRATCH_MNT/fill_$size
> diff --git a/tests/xfs/041.out b/tests/xfs/041.out
> index 0e675804..9e2a2c6d 100644
> --- a/tests/xfs/041.out
> +++ b/tests/xfs/041.out
> @@ -1,19 +1,19 @@
>  QA output created by 041
> -Make 32 megabyte filesystem on SCRATCH_DEV and mount... done
> +Make 512 megabyte filesystem on SCRATCH_DEV and mount... done
>  Fill filesystem... done
> -Grow filesystem to 33m... done
> +Grow filesystem to 513m... done
>  Flush filesystem... done
>  Check files... done
>  Fill filesystem... done
> -Grow filesystem to 67m... done
> +Grow filesystem to 1027m... done
>  Flush filesystem... done
>  Check files... done
>  Fill filesystem... done
> -Grow filesystem to 75m... done
> +Grow filesystem to 1059m... done
>  Flush filesystem... done
>  Check files... done
>  Fill filesystem... done
> -Grow filesystem to 96m... done
> +Grow filesystem to 1536m... done
>  Flush filesystem... done
>  Check files... done
>  Growfs tests passed.
> diff --git a/tests/xfs/042 b/tests/xfs/042
> index d62eb045..baa0f424 100755
> --- a/tests/xfs/042
> +++ b/tests/xfs/042
> @@ -52,7 +52,7 @@ _require_scratch
>  _do_die_on_error=message_only
>  
>  echo -n "Make a 48 megabyte filesystem on SCRATCH_DEV and mount... "
> -_scratch_mkfs_xfs -dsize=48m,agcount=3 2>&1 >/dev/null || _fail "mkfs failed"
> +_scratch_mkfs_xfs -dsize=512m,agcount=3 2>&1 >/dev/null || _fail "mkfs failed"
>  _scratch_mount
>  
>  echo "done"
> diff --git a/tests/xfs/049 b/tests/xfs/049
> index 69656a85..e04769bf 100755
> --- a/tests/xfs/049
> +++ b/tests/xfs/049
> @@ -57,7 +57,7 @@ mount -t ext2 $SCRATCH_DEV $SCRATCH_MNT >> $seqres.full 2>&1 \
>      || _fail "!!! failed to mount"
>  
>  _log "Create xfs fs in file on scratch"
> -${MKFS_XFS_PROG} -f -dfile,name=$SCRATCH_MNT/test.xfs,size=40m \
> +${MKFS_XFS_PROG} -f -dfile,name=$SCRATCH_MNT/test.xfs,size=512m \
>      >> $seqres.full 2>&1 \
>      || _fail "!!! failed to mkfs xfs"
>  
> diff --git a/tests/xfs/073 b/tests/xfs/073
> index c7616b9e..48c293e9 100755
> --- a/tests/xfs/073
> +++ b/tests/xfs/073
> @@ -110,7 +110,7 @@ _require_xfs_copy
>  _require_scratch
>  _require_loop
>  
> -_scratch_mkfs_xfs -dsize=41m,agcount=2 >>$seqres.full 2>&1
> +_scratch_mkfs_xfs -dsize=512m,agcount=2 >>$seqres.full 2>&1
>  _scratch_mount
>  
>  echo
> diff --git a/tests/xfs/076 b/tests/xfs/076
> index 8eef1367..b352cd04 100755
> --- a/tests/xfs/076
> +++ b/tests/xfs/076
> @@ -69,7 +69,7 @@ _require_xfs_sparse_inodes
>  # bitmap consuming all the free space in our small data device.
>  unset SCRATCH_RTDEV
>  
> -_scratch_mkfs "-d size=50m -m crc=1 -i sparse" | tee -a $seqres.full |
> +_scratch_mkfs "-d size=512m -m crc=1 -i sparse" | tee -a $seqres.full |
>  	_filter_mkfs > /dev/null 2> $tmp.mkfs
>  . $tmp.mkfs	# for isize
>  
> diff --git a/tests/xfs/078 b/tests/xfs/078
> index 1f475c96..9a24086e 100755
> --- a/tests/xfs/078
> +++ b/tests/xfs/078
> @@ -103,9 +103,9 @@ _grow_loop()
>  _grow_loop $((168024*4096)) 1376452608 4096 1
>  
>  # Some other blocksize cases...
> -_grow_loop $((168024*2048)) 1376452608 2048 1
> -_grow_loop $((168024*512)) 1376452608 512 1 16m
> -_grow_loop $((168024*1024)) 688230400 1024 1
> +_grow_loop $((168024*4096)) 1376452608 2048 1
> +_grow_loop $((168024*4096)) 1376452608 512 1 16m
> +_grow_loop $((168024*4096)) 688230400 1024 1
>  
>  # Other corner cases suggested by dgc
>  # also the following doesn't check if the filesystem is consistent.
> diff --git a/tests/xfs/078.out b/tests/xfs/078.out
> index cc3c47d1..fe324b07 100644
> --- a/tests/xfs/078.out
> +++ b/tests/xfs/078.out
> @@ -19,9 +19,9 @@ data blocks changed from 168024 to 336048
>  *** unmount
>  *** check
>  
> -=== GROWFS (from 344113152 to 1376452608, 2048 blocksize)
> +=== GROWFS (from 688226304 to 1376452608, 2048 blocksize)
>  
> -*** mkfs loop file (size=344113152)
> +*** mkfs loop file (size=688226304)
>  meta-data=DDEV isize=XXX agcount=N, agsize=XXX blks
>  data     = bsize=XXX blocks=XXX, imaxpct=PCT
>           = sunit=XXX swidth=XXX, unwritten=X
> @@ -32,14 +32,14 @@ realtime =RDEV extsz=XXX blocks=XXX, rtextents=XXX
>  wrote 2048/2048 bytes at offset 1376452608
>  *** mount loop filesystem
>  *** grow loop filesystem
> -xfs_growfs --BlockSize=2048 --Blocks=168024
> -data blocks changed from 168024 to 672096
> +xfs_growfs --BlockSize=2048 --Blocks=336048
> +data blocks changed from 336048 to 672096
>  *** unmount
>  *** check
>  
> -=== GROWFS (from 86028288 to 1376452608, 512 blocksize)
> +=== GROWFS (from 688226304 to 1376452608, 512 blocksize)
>  
> -*** mkfs loop file (size=86028288)
> +*** mkfs loop file (size=688226304)
>  meta-data=DDEV isize=XXX agcount=N, agsize=XXX blks
>  data     = bsize=XXX blocks=XXX, imaxpct=PCT
>           = sunit=XXX swidth=XXX, unwritten=X
> @@ -50,14 +50,14 @@ realtime =RDEV extsz=XXX blocks=XXX, rtextents=XXX
>  wrote 512/512 bytes at offset 1376452608
>  *** mount loop filesystem
>  *** grow loop filesystem
> -xfs_growfs --BlockSize=512 --Blocks=163840
> -data blocks changed from 163840 to 2688384
> +xfs_growfs --BlockSize=512 --Blocks=1344192
> +data blocks changed from 1344192 to 2688384
>  *** unmount
>  *** check
>  
> -=== GROWFS (from 172056576 to 688230400, 1024 blocksize)
> +=== GROWFS (from 688226304 to 688230400, 1024 blocksize)
>  
> -*** mkfs loop file (size=172056576)
> +*** mkfs loop file (size=688226304)
>  meta-data=DDEV isize=XXX agcount=N, agsize=XXX blks
>  data     = bsize=XXX blocks=XXX, imaxpct=PCT
>           = sunit=XXX swidth=XXX, unwritten=X
> @@ -68,8 +68,7 @@ realtime =RDEV extsz=XXX blocks=XXX, rtextents=XXX
>  wrote 1024/1024 bytes at offset 688230400
>  *** mount loop filesystem
>  *** grow loop filesystem
> -xfs_growfs --BlockSize=1024 --Blocks=168024
> -data blocks changed from 168024 to 672096
> +xfs_growfs --BlockSize=1024 --Blocks=672096
>  *** unmount
>  *** check
>  
> diff --git a/tests/xfs/104 b/tests/xfs/104
> index d16f46d8..e4876633 100755
> --- a/tests/xfs/104
> +++ b/tests/xfs/104
> @@ -53,14 +53,14 @@ _require_xfs_io_command "falloc"
>  _scratch_mkfs_xfs | tee -a $seqres.full | _filter_mkfs 2>$tmp.mkfs
>  . $tmp.mkfs	# extract blocksize and data size for scratch device
>  
> -endsize=`expr 550 \* 1048576`	# stop after growing this big
> -incsize=`expr  42 \* 1048576`	# grow in chunks of this size
> +endsize=`expr 1920 \* 1048576`	# stop after growing this big
> +incsize=`expr 179 \* 1048576`	# grow in chunks of this size
>  modsize=`expr   4 \* $incsize`	# pause after this many increments
>  
>  [ `expr $endsize / $dbsize` -lt $dblocks ] || _notrun "Scratch device too small"
>  
>  nags=4
> -size=`expr 125 \* 1048576`	# 120 megabytes initially
> +size=`expr 512 \* 1048576`	# 512 megabytes initially
>  sizeb=`expr $size / $dbsize`	# in data blocks
>  echo "*** creating scratch filesystem"
>  logblks=$(_scratch_find_xfs_min_logblocks -dsize=${size} -dagcount=${nags})
> diff --git a/tests/xfs/104.out b/tests/xfs/104.out
> index de6c7f27..c3fc8829 100644
> --- a/tests/xfs/104.out
> +++ b/tests/xfs/104.out
> @@ -95,33 +95,3 @@ log      =LDEV bsize=XXX blocks=XXX
>  realtime =RDEV extsz=XXX blocks=XXX, rtextents=XXX
>  AGCOUNT=14
>  
> -*** stressing filesystem
> -*** growing filesystem
> -meta-data=DDEV isize=XXX agcount=N, agsize=XXX blks
> -data     = bsize=XXX blocks=XXX, imaxpct=PCT
> -         = sunit=XXX swidth=XXX, unwritten=X
> -naming   =VERN bsize=XXX
> -log      =LDEV bsize=XXX blocks=XXX
> -realtime =RDEV extsz=XXX blocks=XXX, rtextents=XXX
> -AGCOUNT=15
> -
> -*** stressing filesystem
> -*** growing filesystem
> -meta-data=DDEV isize=XXX agcount=N, agsize=XXX blks
> -data     = bsize=XXX blocks=XXX, imaxpct=PCT
> -         = sunit=XXX swidth=XXX, unwritten=X
> -naming   =VERN bsize=XXX
> -log      =LDEV bsize=XXX blocks=XXX
> -realtime =RDEV extsz=XXX blocks=XXX, rtextents=XXX
> -AGCOUNT=17
> -
> -*** stressing filesystem
> -*** growing filesystem
> -meta-data=DDEV isize=XXX agcount=N, agsize=XXX blks
> -data     = bsize=XXX blocks=XXX, imaxpct=PCT
> -         = sunit=XXX swidth=XXX, unwritten=X
> -naming   =VERN bsize=XXX
> -log      =LDEV bsize=XXX blocks=XXX
> -realtime =RDEV extsz=XXX blocks=XXX, rtextents=XXX
> -AGCOUNT=18
> -
> diff --git a/tests/xfs/107 b/tests/xfs/107
> index 1ea9c492..e1f9b537 100755
> --- a/tests/xfs/107
> +++ b/tests/xfs/107
> @@ -23,9 +23,9 @@ _require_scratch
>  _require_xfs_io_command allocsp		# detect presence of ALLOCSP ioctl
>  _require_test_program allocstale
>  
> -# Create a 256MB filesystem to avoid running into mkfs problems with too-small
> +# Create a 512MB filesystem to avoid running into mkfs problems with too-small
>  # filesystems.
> -size_mb=256
> +size_mb=512
>  
>  # Write a known pattern to the disk so that we can detect stale disk blocks
>  # being mapped into the file.  In the test author's experience, the bug will
> diff --git a/tests/xfs/118 b/tests/xfs/118
> index 03755b28..6fc3cdaa 100755
> --- a/tests/xfs/118
> +++ b/tests/xfs/118
> @@ -27,8 +27,8 @@ _require_scratch
>  _require_command "$XFS_FSR_PROG" "xfs_fsr"
>  _require_xfs_io_command "falloc"
>  
> -# 50M
> -_scratch_mkfs_sized $((50 * 1024 * 1024)) >> $seqres.full 2>&1
> +# 512M
> +_scratch_mkfs_sized $((512 * 1024 * 1024)) >> $seqres.full 2>&1
>  _scratch_mount
>  
>  echo "Silence is golden"
> diff --git a/tests/xfs/148 b/tests/xfs/148
> index 5d0a0bf4..f64d10df 100755
> --- a/tests/xfs/148
> +++ b/tests/xfs/148
> @@ -44,7 +44,7 @@ rm -f $imgfile $imgfile.old
>  # We need to use 512 byte inodes to ensure the attr forks remain in short form
>  # even when security xattrs are present so we are always doing name matches on
>  # lookup and not name hash compares as leaf/node forms will do.
> -$XFS_IO_PROG -f -c 'truncate 40m' $imgfile
> +$XFS_IO_PROG -f -c 'truncate 512m' $imgfile
>  loopdev=$(_create_loop_device $imgfile)
>  MKFS_OPTIONS="-m crc=0 -i size=512" _mkfs_dev $loopdev >> $seqres.full
>  
> diff --git a/tests/xfs/149 b/tests/xfs/149
> index 503eff65..49762556 100755
> --- a/tests/xfs/149
> +++ b/tests/xfs/149
> @@ -42,10 +42,10 @@ _require_loop
>  mkdir -p $mntdir || _fail "!!! failed to create temp mount dir"
>  
>  echo "=== mkfs.xfs ==="
> -$MKFS_XFS_PROG -d file,name=$loopfile,size=16m -f >/dev/null 2>&1
> +$MKFS_XFS_PROG -d file,name=$loopfile,size=512m -f >> $seqres.full 2>&1
>  
>  echo "=== truncate ==="
> -$XFS_IO_PROG -fc "truncate 256m" $loopfile
> +$XFS_IO_PROG -fc "truncate 3072m" $loopfile
>  
>  echo "=== create loop device ==="
>  loop_dev=$(_create_loop_device $loopfile)
> @@ -69,10 +69,10 @@ echo "=== mount ==="
>  $MOUNT_PROG $loop_dev $mntdir || _fail "!!! failed to loopback mount"
>  
>  echo "=== xfs_growfs - check device node ==="
> -$XFS_GROWFS_PROG -D 8192 $loop_dev > /dev/null
> +$XFS_GROWFS_PROG -D 262144 $loop_dev > /dev/null
>  
>  echo "=== xfs_growfs - check device symlink ==="
> -$XFS_GROWFS_PROG -D 12288 $loop_symlink > /dev/null
> +$XFS_GROWFS_PROG -D 393216 $loop_symlink > /dev/null
>  
>  echo "=== unmount ==="
>  $UMOUNT_PROG $mntdir || _fail "!!! failed to unmount"
> @@ -81,10 +81,10 @@ echo "=== mount device symlink ==="
>  $MOUNT_PROG $loop_symlink $mntdir || _fail "!!! failed to loopback mount"
>  
>  echo "=== xfs_growfs - check device symlink ==="
> -$XFS_GROWFS_PROG -D 16384 $loop_symlink > /dev/null
> +$XFS_GROWFS_PROG -D 524288 $loop_symlink > /dev/null
>  
>  echo "=== xfs_growfs - check device node ==="
> -$XFS_GROWFS_PROG -D 20480 $loop_dev > /dev/null
> +$XFS_GROWFS_PROG -D 655360 $loop_dev > /dev/null
>  
>  # success, all done
>  status=0
> diff --git a/tests/xfs/168 b/tests/xfs/168
> index ffcd0df8..f3d5193b 100755
> --- a/tests/xfs/168
> +++ b/tests/xfs/168
> @@ -51,7 +51,7 @@ _require_xfs_io_command "falloc"
>  _scratch_mkfs_xfs | tee -a $seqres.full | _filter_mkfs 2>$tmp.mkfs >/dev/null
>  . $tmp.mkfs	# extract blocksize and data size for scratch device
>  
> -endsize=`expr 125 \* 1048576`	# stop after shrinking this big
> +endsize=`expr 300 \* 1048576`	# stop after shrinking this big
>  [ `expr $endsize / $dbsize` -lt $dblocks ] || _notrun "Scratch device too small"
>  
>  nags=2
> diff --git a/tests/xfs/170 b/tests/xfs/170
> index b9ead341..f437fff3 100755
> --- a/tests/xfs/170
> +++ b/tests/xfs/170
> @@ -31,11 +31,11 @@ _set_stream_timeout_centisecs 3000
>  # the log for small filesystems, so we make sure there's one more AG than
>  # filestreams to encourage the allocator to skip whichever AG owns the log.
>  #
> -# Exercise 9x 22MB AGs, 4 filestreams, 8 files per stream, and 3MB per file.
> -_test_streams 9 22 4 8 3 0 0
> -_test_streams 9 22 4 8 3 1 0
> -_test_streams 9 22 4 8 3 0 1
> -_test_streams 9 22 4 8 3 1 1
> +# Exercise 9x 68MB AGs, 4 filestreams, 8 files per stream, and 9MB per file.
> +_test_streams 9 68 4 8 9 0 0
> +_test_streams 9 68 4 8 9 1 0
> +_test_streams 9 68 4 8 9 0 1
> +_test_streams 9 68 4 8 9 1 1
>  
>  status=0
>  exit
> diff --git a/tests/xfs/170.out b/tests/xfs/170.out
> index 16dcb795..513c230d 100644
> --- a/tests/xfs/170.out
> +++ b/tests/xfs/170.out
> @@ -1,20 +1,20 @@
>  QA output created by 170
> -# testing 9 22 4 8 3 0 0 ....
> +# testing 9 68 4 8 9 0 0 ....
>  # streaming
>  # sync AGs...
>  # checking stream AGs...
>  + passed, streams are in seperate AGs
> -# testing 9 22 4 8 3 1 0 ....
> +# testing 9 68 4 8 9 1 0 ....
>  # streaming
>  # sync AGs...
>  # checking stream AGs...
>  + passed, streams are in seperate AGs
> -# testing 9 22 4 8 3 0 1 ....
> +# testing 9 68 4 8 9 0 1 ....
>  # streaming
>  # sync AGs...
>  # checking stream AGs...
>  + passed, streams are in seperate AGs
> -# testing 9 22 4 8 3 1 1 ....
> +# testing 9 68 4 8 9 1 1 ....
>  # streaming
>  # sync AGs...
>  # checking stream AGs...
> diff --git a/tests/xfs/174 b/tests/xfs/174
> index 1245a217..3b04cd35 100755
> --- a/tests/xfs/174
> +++ b/tests/xfs/174
> @@ -24,8 +24,8 @@ _check_filestreams_support || _notrun "filestreams not available"
>  # test number of streams greater than AGs. Expected to fail.
>  _set_stream_timeout_centisecs 6000
>  
> -_test_streams 8 32 65 3 1 1 0 fail
> -_test_streams 8 32 65 3 1 0 1 fail
> +_test_streams 8 68 72 3 1 1 0 fail
> +_test_streams 8 68 72 3 1 0 1 fail
>  
>  status=0
>  exit
> diff --git a/tests/xfs/174.out b/tests/xfs/174.out
> index 5df581fe..d9fea2f7 100644
> --- a/tests/xfs/174.out
> +++ b/tests/xfs/174.out
> @@ -1,10 +1,10 @@
>  QA output created by 174
> -# testing 8 32 65 3 1 1 0 fail ....
> +# testing 8 68 72 3 1 1 0 fail ....
>  # streaming
>  # sync AGs...
>  # checking stream AGs...
>  + expected failure, matching AGs
> -# testing 8 32 65 3 1 0 1 fail ....
> +# testing 8 68 72 3 1 0 1 fail ....
>  # streaming
>  # sync AGs...
>  # checking stream AGs...
> diff --git a/tests/xfs/176 b/tests/xfs/176
> index ba4aae59..8d60cd36 100755
> --- a/tests/xfs/176
> +++ b/tests/xfs/176
> @@ -23,7 +23,7 @@ _require_scratch_xfs_shrink
>  _require_xfs_io_command "falloc"
>  _require_xfs_io_command "fpunch"
>  
> -_scratch_mkfs "-d size=50m -m crc=1 -i sparse" |
> +_scratch_mkfs "-d size=512m -m crc=1 -i sparse" |
>  	_filter_mkfs > /dev/null 2> $tmp.mkfs
>  . $tmp.mkfs	# for isize
>  cat $tmp.mkfs >> $seqres.full
> diff --git a/tests/xfs/205 b/tests/xfs/205
> index 104f1f45..f1a8200a 100755
> --- a/tests/xfs/205
> +++ b/tests/xfs/205
> @@ -23,7 +23,7 @@ _require_scratch_nocheck
>  unset SCRATCH_RTDEV
>  
>  fsblksz=1024
> -_scratch_mkfs_xfs -d size=$((32768*fsblksz)) -b size=$fsblksz >> $seqres.full 2>&1
> +_scratch_mkfs_xfs -d size=$((524288*fsblksz)) -b size=$fsblksz >> $seqres.full 2>&1
>  _scratch_mount
>  
>  # fix the reserve block pool to a known size so that the enospc calculations
> diff --git a/tests/xfs/227 b/tests/xfs/227
> index cd927dc4..5f5f519e 100755
> --- a/tests/xfs/227
> +++ b/tests/xfs/227
> @@ -122,7 +122,7 @@ create_target_attr_last()
>  }
>  
>  # use a small filesystem so we can control freespace easily
> -_scratch_mkfs_sized $((50 * 1024 * 1024)) >> $seqres.full 2>&1
> +_scratch_mkfs_sized $((512 * 1024 * 1024)) >> $seqres.full 2>&1
>  _scratch_mount
>  fragment_freespace
>  
> diff --git a/tests/xfs/233 b/tests/xfs/233
> index 2b2b8666..573b7a17 100755
> --- a/tests/xfs/233
> +++ b/tests/xfs/233
> @@ -18,7 +18,7 @@ _require_xfs_scratch_rmapbt
>  _require_no_large_scratch_dev
>  
>  echo "Format and mount"
> -_scratch_mkfs_sized $((2 * 4096 * 4096)) > $seqres.full 2>&1
> +_scratch_mkfs_sized $((32 * 4096 * 4096)) > $seqres.full 2>&1
>  _scratch_mount >> $seqres.full 2>&1
>  
>  testdir=$SCRATCH_MNT/test-$seq
> diff --git a/tests/xfs/279 b/tests/xfs/279
> index 835d187f..262f30b7 100755
> --- a/tests/xfs/279
> +++ b/tests/xfs/279
> @@ -55,7 +55,7 @@ _check_mkfs()
>  (
>  echo "==================="
>  echo "4k physical 512b logical aligned"
> -SCSI_DEBUG_DEV=`_get_scsi_debug_dev 4096 512 0 128`
> +SCSI_DEBUG_DEV=`_get_scsi_debug_dev 4096 512 0 512`
>  test -b "$SCSI_DEBUG_DEV" || _notrun "Could not get scsi_debug device"
>  # sector size should default to 4k
>  _check_mkfs $SCSI_DEBUG_DEV
> @@ -68,7 +68,7 @@ _put_scsi_debug_dev
>  (
>  echo "==================="
>  echo "4k physical 512b logical unaligned"
> -SCSI_DEBUG_DEV=`_get_scsi_debug_dev 4096 512 1 128`
> +SCSI_DEBUG_DEV=`_get_scsi_debug_dev 4096 512 1 512`
>  test -b "$SCSI_DEBUG_DEV" || _notrun "Could not get scsi_debug device"
>  # should fail on misalignment
>  _check_mkfs $SCSI_DEBUG_DEV
> @@ -85,7 +85,7 @@ _put_scsi_debug_dev
>  (
>  echo "==================="
>  echo "hard 4k physical / 4k logical"
> -SCSI_DEBUG_DEV=`_get_scsi_debug_dev 4096 4096 0 128`
> +SCSI_DEBUG_DEV=`_get_scsi_debug_dev 4096 4096 0 512`
>  test -b "$SCSI_DEBUG_DEV" || _notrun "Could not get scsi_debug device"
>  # block size smaller than sector size should fail 
>  _check_mkfs -b size=2048 $SCSI_DEBUG_DEV
> diff --git a/tests/xfs/289 b/tests/xfs/289
> index c722deff..dc453b55 100755
> --- a/tests/xfs/289
> +++ b/tests/xfs/289
> @@ -39,10 +39,10 @@ tmpbind=$TEST_DIR/tmpbind.$$
>  mkdir -p $tmpdir || _fail "!!! failed to create temp mount dir"
>  
>  echo "=== mkfs.xfs ==="
> -$MKFS_XFS_PROG -d file,name=$tmpfile,size=16m -f >/dev/null 2>&1
> +$MKFS_XFS_PROG -d file,name=$tmpfile,size=512m -f >/dev/null 2>&1
>  
>  echo "=== truncate ==="
> -$XFS_IO_PROG -fc "truncate 256m" $tmpfile
> +$XFS_IO_PROG -fc "truncate 5g" $tmpfile
>  
>  echo "=== xfs_growfs - unmounted, command should be rejected ==="
>  $XFS_GROWFS_PROG $tmpdir 2>&1 |  _filter_test_dir
> @@ -61,34 +61,34 @@ echo "=== mount ==="
>  $MOUNT_PROG -o loop $tmpfile $tmpdir || _fail "!!! failed to loopback mount"
>  
>  echo "=== xfs_growfs - mounted - check absolute path ==="
> -$XFS_GROWFS_PROG -D 8192 $tmpdir | _filter_test_dir > /dev/null
> +$XFS_GROWFS_PROG -D 262114 $tmpdir | _filter_test_dir > /dev/null
>  
>  echo "=== xfs_growfs - check relative path ==="
> -$XFS_GROWFS_PROG -D 12288 ./tmpdir > /dev/null
> +$XFS_GROWFS_PROG -D 393216 ./tmpdir > /dev/null
>  
>  echo "=== xfs_growfs - no path ==="
> -$XFS_GROWFS_PROG -D 16384 tmpdir > /dev/null
> +$XFS_GROWFS_PROG -D 524288 tmpdir > /dev/null
>  
>  echo "=== xfs_growfs - symbolic link ==="
>  ln -s $tmpdir $tmpsymlink
> -$XFS_GROWFS_PROG -D 20480 $tmpsymlink | _filter_test_dir > /dev/null
> +$XFS_GROWFS_PROG -D 655360 $tmpsymlink | _filter_test_dir > /dev/null
>  
>  echo "=== xfs_growfs - symbolic link using relative path ==="
> -$XFS_GROWFS_PROG -D 24576 ./tmpsymlink.$$ > /dev/null
> +$XFS_GROWFS_PROG -D 786432 ./tmpsymlink.$$ > /dev/null
>  
>  echo "=== xfs_growfs - symbolic link using no path ==="
> -$XFS_GROWFS_PROG -D 28672 tmpsymlink.$$ > /dev/null
> +$XFS_GROWFS_PROG -D 917504 tmpsymlink.$$ > /dev/null
>  
>  echo "=== xfs_growfs - bind mount ==="
>  mkdir $tmpbind
>  $MOUNT_PROG -o bind $tmpdir $tmpbind
> -$XFS_GROWFS_PROG -D 32768 $tmpbind | _filter_test_dir > /dev/null
> +$XFS_GROWFS_PROG -D 1048576 $tmpbind | _filter_test_dir > /dev/null
>  
>  echo "=== xfs_growfs - bind mount - relative path ==="
> -$XFS_GROWFS_PROG -D 36864 ./tmpbind.$$ > /dev/null
> +$XFS_GROWFS_PROG -D 1179648 ./tmpbind.$$ > /dev/null
>  
>  echo "=== xfs_growfs - bind mount - no path ==="
> -$XFS_GROWFS_PROG -D 40960 tmpbind.$$ > /dev/null
> +$XFS_GROWFS_PROG -D 1310720 tmpbind.$$ > /dev/null
>  
>  echo "=== xfs_growfs - plain file - should be rejected ==="
>  $XFS_GROWFS_PROG $tmpfile 2>&1 | _filter_test_dir
> diff --git a/tests/xfs/291 b/tests/xfs/291
> index a2425e47..560e8891 100755
> --- a/tests/xfs/291
> +++ b/tests/xfs/291
> @@ -16,8 +16,8 @@ _supported_fs xfs
>  
>  # real QA test starts here
>  _require_scratch
> -logblks=$(_scratch_find_xfs_min_logblocks -n size=16k -d size=133m)
> -_scratch_mkfs_xfs -n size=16k -l size=${logblks}b -d size=133m >> $seqres.full 2>&1
> +logblks=$(_scratch_find_xfs_min_logblocks -n size=16k -d size=512m)
> +_scratch_mkfs_xfs -n size=16k -l size=${logblks}b -d size=512m >> $seqres.full 2>&1
>  _scratch_mount
>  
>  # First we cause very badly fragmented freespace, then
> diff --git a/tests/xfs/306 b/tests/xfs/306
> index b57bf4c0..b52285da 100755
> --- a/tests/xfs/306
> +++ b/tests/xfs/306
> @@ -30,7 +30,7 @@ unset SCRATCH_RTDEV
>  
>  # Create a small fs with a large directory block size. We want to fill up the fs
>  # quickly and then create multi-fsb dirblocks over fragmented free space.
> -_scratch_mkfs_xfs -d size=20m -n size=64k >> $seqres.full 2>&1
> +_scratch_mkfs_xfs -d size=512m -n size=64k >> $seqres.full 2>&1
>  _scratch_mount
>  
>  # Fill a source directory with many largish-named files. 1k uuid-named entries
> diff --git a/tests/xfs/514 b/tests/xfs/514
> index cf5588f2..1243d293 100755
> --- a/tests/xfs/514
> +++ b/tests/xfs/514
> @@ -37,7 +37,7 @@ esac
>  _require_command "$(type -P $CAT)" $CAT
>  
>  file=$TEST_DIR/xx.$seq
> -truncate -s 128m $file
> +truncate -s 512m $file
>  $MKFS_XFS_PROG $file >> /dev/null
>  
>  for COMMAND in `$XFS_DB_PROG -x -c help $file | awk '{print $1}' | grep -v "^Use"`; do
> diff --git a/tests/xfs/520 b/tests/xfs/520
> index 2fceb07c..d9e252bd 100755
> --- a/tests/xfs/520
> +++ b/tests/xfs/520
> @@ -60,7 +60,7 @@ force_crafted_metadata() {
>  }
>  
>  bigval=100000000
> -fsdsopt="-d agcount=1,size=64m"
> +fsdsopt="-d agcount=1,size=512m"
>  
>  force_crafted_metadata freeblks 0 "agf 0"
>  force_crafted_metadata longest $bigval "agf 0"
> -- 
> 2.31.1
> 


^ permalink raw reply	[flat|nested] 20+ messages in thread

* Re: [PATCH v3 4/4] xfs/144: remove testing root dir inode in AG 1
  2022-08-30  4:44 ` [PATCH v3 4/4] xfs/144: remove testing root dir inode in AG 1 Murphy Zhou
@ 2022-08-30  7:49   ` Zorro Lang
  2022-08-30 14:59     ` Darrick J. Wong
  2022-08-30 23:42     ` Murphy Zhou
  0 siblings, 2 replies; 20+ messages in thread
From: Zorro Lang @ 2022-08-30  7:49 UTC (permalink / raw)
  To: Murphy Zhou; +Cc: fstests, linux-xfs

On Tue, Aug 30, 2022 at 12:44:33PM +0800, Murphy Zhou wrote:
> Since this xfsprogs commit
>   1b580a773 mkfs: don't let internal logs bump the root dir inode chunk to AG 1
> this operation is not allowed.
> 
> Signed-off-by: Murphy Zhou <jencce.kernel@gmail.com>
> ---
>  tests/xfs/144 | 10 +---------
>  1 file changed, 1 insertion(+), 9 deletions(-)
> 
> diff --git a/tests/xfs/144 b/tests/xfs/144
> index 706aff61..3f80d0ee 100755
> --- a/tests/xfs/144
> +++ b/tests/xfs/144
> @@ -17,9 +17,6 @@ _begin_fstest auto mkfs
>  _supported_fs xfs
>  _require_test
>  
> -# The last testcase creates a (sparse) fs image with a 2GB log, so we need
> -# 3GB to avoid failing the mkfs due to ENOSPC.
> -_require_fs_space $TEST_DIR $((3 * 1048576))
>  echo Silence is golden
>  
>  testfile=$TEST_DIR/a
> @@ -36,7 +33,7 @@ test_format() {
>  }
>  
>  # First we try various small filesystems and stripe sizes.
> -for M in `seq 298 302` `seq 490 520`; do
> +for M in `seq 1024 1030` ; do

Can `seq 1024 1030` replace `seq 298 302` `seq 490 520`? I don't know how
Darrick choose these numbers, better to ask the original authoer of this
case. Others looks reasonable for me.

Thanks,
Zorro

>  	for S in `seq 32 4 64`; do
>  		test_format "M=$M S=$S" -dsu=${S}k,sw=1,size=${M}m -N
>  	done
> @@ -45,11 +42,6 @@ done
>  # log end rounded beyond EOAG due to stripe unit
>  test_format "log end beyond eoag" -d agcount=3200,size=6366g -d su=256k,sw=4 -N
>  
> -# Log so large it pushes the root dir into AG 1.  We can't use -N for the mkfs
> -# because this check only occurs after the root directory has been allocated,
> -# which mkfs -N doesn't do.
> -test_format "log pushes rootdir into AG 1" -d agcount=3200,size=6366g -lagnum=0
> -
>  # success, all done
>  status=0
>  exit
> -- 
> 2.31.1
> 


^ permalink raw reply	[flat|nested] 20+ messages in thread

* Re: [PATCH v3 3/4] tests/xfs: remove single-AG options
  2022-08-30  4:44 ` [PATCH v3 3/4] tests/xfs: remove single-AG options Murphy Zhou
@ 2022-08-30 13:42   ` Zorro Lang
  2022-08-31  0:02     ` Murphy Zhou
  2022-08-30 15:05   ` Darrick J. Wong
  1 sibling, 1 reply; 20+ messages in thread
From: Zorro Lang @ 2022-08-30 13:42 UTC (permalink / raw)
  To: Murphy Zhou; +Cc: fstests, linux-xfs

On Tue, Aug 30, 2022 at 12:44:32PM +0800, Murphy Zhou wrote:
> Since this xfsprogs commit:
> 	6e0ed3d19c54 mkfs: stop allowing tiny filesystems
> Single-AG xfs is not allowed.
> 
> Remove agcount=1 from mkfs options and xfs/202 entirely.
> 
> Signed-off-by: Murphy Zhou <jencce.kernel@gmail.com>
> ---

Looks like all single AG xfs tests are invalid now. As this patch would like to
remove xfs specific cases or change its original format, better to let xfs list
review, to make sure they are informed at least.

BTW I remember xfs/041 uses "agcount=1" too, don't we need to change it with
this patch together?

Thanks,
Zorro

>  tests/xfs/179     |  2 +-
>  tests/xfs/202     | 40 ----------------------------------------
>  tests/xfs/202.out | 29 -----------------------------
>  tests/xfs/520     |  2 +-
>  4 files changed, 2 insertions(+), 71 deletions(-)
>  delete mode 100755 tests/xfs/202
>  delete mode 100644 tests/xfs/202.out
> 
> diff --git a/tests/xfs/179 b/tests/xfs/179
> index ec0cb7e5..f0169717 100755
> --- a/tests/xfs/179
> +++ b/tests/xfs/179
> @@ -22,7 +22,7 @@ _require_cp_reflink
>  _require_test_program "punch-alternating"
>  
>  echo "Format and mount"
> -_scratch_mkfs -d agcount=1 > $seqres.full 2>&1
> +_scratch_mkfs > $seqres.full 2>&1
>  _scratch_mount >> $seqres.full 2>&1
>  
>  testdir=$SCRATCH_MNT/test-$seq
> diff --git a/tests/xfs/202 b/tests/xfs/202
> deleted file mode 100755
> index 5075d3a1..00000000
> --- a/tests/xfs/202
> +++ /dev/null
> @@ -1,40 +0,0 @@
> -#! /bin/bash
> -# SPDX-License-Identifier: GPL-2.0
> -# Copyright (c) 2009 Christoph Hellwig.
> -#
> -# FS QA Test No. 202
> -#
> -# Test out the xfs_repair -o force_geometry option on single-AG filesystems.
> -#
> -. ./common/preamble
> -_begin_fstest repair auto quick
> -
> -# Import common functions.
> -. ./common/filter
> -. ./common/repair
> -
> -# real QA test starts here
> -_supported_fs xfs
> -
> -# single AG will cause default xfs_repair to fail. This test is actually
> -# testing the special corner case option needed to repair a single AG fs.
> -_require_scratch_nocheck
> -
> -#
> -# The AG size is limited to 1TB (or even less with historic xfsprogs),
> -# so chose a small enough filesystem to make sure we can actually create
> -# a single AG filesystem.
> -#
> -echo "== Creating single-AG filesystem =="
> -_scratch_mkfs_xfs -d agcount=1 -d size=$((1024*1024*1024)) >/dev/null 2>&1 \
> - || _fail "!!! failed to make filesystem with single AG"
> -
> -echo "== Trying to repair it (should fail) =="
> -_scratch_xfs_repair
> -
> -echo "== Trying to repair it with -o force_geometry =="
> -_scratch_xfs_repair -o force_geometry 2>&1 | _filter_repair
> -
> -# success, all done
> -echo "*** done"
> -status=0
> diff --git a/tests/xfs/202.out b/tests/xfs/202.out
> deleted file mode 100644
> index c2c5c881..00000000
> --- a/tests/xfs/202.out
> +++ /dev/null
> @@ -1,29 +0,0 @@
> -QA output created by 202
> -== Creating single-AG filesystem ==
> -== Trying to repair it (should fail) ==
> -Phase 1 - find and verify superblock...
> -Only one AG detected - cannot validate filesystem geometry.
> -Use the -o force_geometry option to proceed.
> -== Trying to repair it with -o force_geometry ==
> -Phase 1 - find and verify superblock...
> -Phase 2 - using <TYPEOF> log
> -        - zero log...
> -        - scan filesystem freespace and inode maps...
> -        - found root inode chunk
> -Phase 3 - for each AG...
> -        - scan and clear agi unlinked lists...
> -        - process known inodes and perform inode discovery...
> -        - process newly discovered inodes...
> -Phase 4 - check for duplicate blocks...
> -        - setting up duplicate extent list...
> -        - check for inodes claiming duplicate blocks...
> -Phase 5 - rebuild AG headers and trees...
> -        - reset superblock...
> -Phase 6 - check inode connectivity...
> -        - resetting contents of realtime bitmap and summary inodes
> -        - traversing filesystem ...
> -        - traversal finished ...
> -        - moving disconnected inodes to lost+found ...
> -Phase 7 - verify and correct link counts...
> -done
> -*** done
> diff --git a/tests/xfs/520 b/tests/xfs/520
> index d9e252bd..de70db60 100755
> --- a/tests/xfs/520
> +++ b/tests/xfs/520
> @@ -60,7 +60,7 @@ force_crafted_metadata() {
>  }
>  
>  bigval=100000000
> -fsdsopt="-d agcount=1,size=512m"
> +fsdsopt="-d size=512m"
>  
>  force_crafted_metadata freeblks 0 "agf 0"
>  force_crafted_metadata longest $bigval "agf 0"
> -- 
> 2.31.1
> 


^ permalink raw reply	[flat|nested] 20+ messages in thread

* Re: [PATCH v3 1/4] tests: increase fs size for mkfs
  2022-08-30  7:36   ` Zorro Lang
@ 2022-08-30 14:46     ` Darrick J. Wong
  2022-08-30 19:07       ` Zorro Lang
  0 siblings, 1 reply; 20+ messages in thread
From: Darrick J. Wong @ 2022-08-30 14:46 UTC (permalink / raw)
  To: Zorro Lang; +Cc: Murphy Zhou, fstests, linux-xfs

On Tue, Aug 30, 2022 at 03:36:34PM +0800, Zorro Lang wrote:
> On Tue, Aug 30, 2022 at 12:44:30PM +0800, Murphy Zhou wrote:
> > Since this xfsprogs commit:
> > 	6e0ed3d19c54 mkfs: stop allowing tiny filesystems
> > XFS requires filesystem size bigger then 300m.
> 
> I'm wondering if we can just use 300M, or 512M is better. CC linux-xfs to
> get more discussion about how to deal with this change on mkfs.xfs.
> 
> > 
> > Increase thoese numbers to 512M at least. There is no special
> > reason for the magic number 512, just double it from original
> > 256M and being reasonable small.
> 
> Hmm... do we need a global parameter to define the minimal XFS size,
> or even minimal local fs size? e.g. MIN_XFS_SIZE, or MIN_FS_SIZE ...

I think it would be a convenient time to create a helper to capture
that, seeing as the LTP developers recently let slip that they have such
a thing somewhere, and min fs size logic is scattered around fstests.

--D

> > 
> > Signed-off-by: Murphy Zhou <jencce.kernel@gmail.com>
> > ---
> >  common/config         |  2 +-
> >  common/xfs            |  2 +-
> >  tests/generic/015     |  2 +-
> >  tests/generic/027     |  2 +-
> >  tests/generic/042     |  3 +++
> >  tests/generic/077     |  2 +-
> >  tests/generic/081     |  6 +++---
> >  tests/generic/083     |  2 +-
> >  tests/generic/085     |  2 +-
> >  tests/generic/108     |  4 ++--
> >  tests/generic/204     |  2 +-
> >  tests/generic/226     |  2 +-
> >  tests/generic/250     |  2 +-
> >  tests/generic/252     |  2 +-
> >  tests/generic/371     |  2 +-
> >  tests/generic/387     |  2 +-
> >  tests/generic/416     |  2 +-
> >  tests/generic/416.out |  2 +-
> >  tests/generic/427     |  2 +-
> >  tests/generic/449     |  2 +-
> >  tests/generic/455     |  2 +-
> >  tests/generic/457     |  2 +-
> >  tests/generic/482     |  2 +-
> >  tests/generic/511     |  2 +-
> >  tests/generic/520     |  4 ++--
> >  tests/generic/536     |  2 +-
> >  tests/generic/619     |  2 +-
> >  tests/generic/626     |  2 +-
> >  tests/xfs/002         |  2 +-
> >  tests/xfs/015         |  2 +-
> >  tests/xfs/041         |  8 ++++----
> >  tests/xfs/041.out     | 10 +++++-----
> >  tests/xfs/042         |  2 +-
> >  tests/xfs/049         |  2 +-
> >  tests/xfs/073         |  2 +-
> >  tests/xfs/076         |  2 +-
> >  tests/xfs/078         |  6 +++---
> >  tests/xfs/078.out     | 23 +++++++++++------------
> >  tests/xfs/104         |  6 +++---
> >  tests/xfs/104.out     | 30 ------------------------------
> >  tests/xfs/107         |  4 ++--
> >  tests/xfs/118         |  4 ++--
> >  tests/xfs/148         |  2 +-
> >  tests/xfs/149         | 12 ++++++------
> >  tests/xfs/168         |  2 +-
> >  tests/xfs/170         | 10 +++++-----
> >  tests/xfs/170.out     |  8 ++++----
> >  tests/xfs/174         |  4 ++--
> >  tests/xfs/174.out     |  4 ++--
> >  tests/xfs/176         |  2 +-
> >  tests/xfs/205         |  2 +-
> >  tests/xfs/227         |  2 +-
> >  tests/xfs/233         |  2 +-
> >  tests/xfs/279         |  6 +++---
> >  tests/xfs/289         | 22 +++++++++++-----------
> >  tests/xfs/291         |  4 ++--
> >  tests/xfs/306         |  2 +-
> >  tests/xfs/514         |  2 +-
> >  tests/xfs/520         |  2 +-
> >  59 files changed, 114 insertions(+), 142 deletions(-)
> > 
> > diff --git a/common/config b/common/config
> > index c30eec6d..45b7650b 100644
> > --- a/common/config
> > +++ b/common/config
> > @@ -325,7 +325,7 @@ fi
> >  if [ "$FSTYP" == "xfs" ]; then
> >  	XFS_MKFS_HAS_NO_META_SUPPORT=""
> >  	touch /tmp/crc_check.img
> > -	$MKFS_XFS_PROG -N -d file,name=/tmp/crc_check.img,size=32m -m crc=0 \
> > +	$MKFS_XFS_PROG -N -d file,name=/tmp/crc_check.img,size=512m -m crc=0 \
> >  		>/dev/null 2>&1;
> >  	if [ $? -ne 0 ]; then
> >  		XFS_MKFS_HAS_NO_META_SUPPORT=true
> > diff --git a/common/xfs b/common/xfs
> > index 9f84dffb..efabb0ad 100644
> > --- a/common/xfs
> > +++ b/common/xfs
> > @@ -1176,7 +1176,7 @@ _require_xfs_copy()
> >  	# xfs_copy on v5 filesystems do not require the "-d" option if xfs_db
> >  	# can change the UUID on v5 filesystems
> >  	touch /tmp/$$.img
> > -	$MKFS_XFS_PROG -d file,name=/tmp/$$.img,size=64m >/dev/null 2>&1
> > +	$MKFS_XFS_PROG -d file,name=/tmp/$$.img,size=512m >/dev/null 2>&1
> >  
> >  	# xfs_db will return 0 even if it can't generate a new uuid, so
> >  	# check the output to make sure if it can change UUID of V5 xfs
> > diff --git a/tests/generic/015 b/tests/generic/015
> > index 10423a29..f6804897 100755
> > --- a/tests/generic/015
> > +++ b/tests/generic/015
> > @@ -31,7 +31,7 @@ _require_no_large_scratch_dev
> >  
> >  # btrfs needs at least 256MB (with upward round off) to create a non-mixed mode
> >  # fs. Ref: btrfs-progs: btrfs_min_dev_size()
> > -_scratch_mkfs_sized $((256 * 1024 * 1024)) >> $seqres.full 2>&1 \
> > +_scratch_mkfs_sized $((512 * 1024 * 1024)) >> $seqres.full 2>&1 \
> 
> As you change the 256 to 512 at here, better to change above comment which says
> why 256M is needed.
> 
> >      || _fail "mkfs failed"
> >  _scratch_mount
> >  out=$SCRATCH_MNT/fillup.$$
> > diff --git a/tests/generic/027 b/tests/generic/027
> > index 47f1981d..ad8175c1 100755
> > --- a/tests/generic/027
> > +++ b/tests/generic/027
> > @@ -35,7 +35,7 @@ _require_scratch
> >  
> >  echo "Silence is golden"
> >  
> > -_scratch_mkfs_sized $((256 * 1024 * 1024)) >>$seqres.full 2>&1
> > +_scratch_mkfs_sized $((512 * 1024 * 1024)) >>$seqres.full 2>&1
> >  _scratch_mount
> >  
> >  echo "Reserve 2M space" >>$seqres.full
> > diff --git a/tests/generic/042 b/tests/generic/042
> > index dbc65e33..54f883cd 100755
> > --- a/tests/generic/042
> > +++ b/tests/generic/042
> > @@ -32,8 +32,11 @@ _crashtest()
> >  	# f2fs-utils 1.9.0 needs at least 38 MB space for f2fs image. However,
> >  	# f2fs-utils 1.14.0 needs at least 52 MB. Not sure if it will change
> >  	# again. So just set it 128M.
> > +	# xfsprogs 5.19.0 requires xfs size larger then 300m.
> >  	if [ $FSTYP == "f2fs" ]; then
> >  		size=128M
> > +	elif [ $FSTYP == "xfs" ]; then
> > +		size=512M
> >  	fi
> >  
> >  	# Create an fs on a small, initialized image. The pattern is written to
> > diff --git a/tests/generic/077 b/tests/generic/077
> > index 94d89fae..639564ed 100755
> > --- a/tests/generic/077
> > +++ b/tests/generic/077
> > @@ -49,7 +49,7 @@ echo "*** create filesystem"
> >  _scratch_unmount >/dev/null 2>&1
> >  echo "*** MKFS ***"                         >>$seqres.full
> >  echo ""                                     >>$seqres.full
> > -fs_size=$((256 * 1024 * 1024))
> > +fs_size=$((512 * 1024 * 1024))
> >  _scratch_mkfs_sized $fs_size >> $seqres.full 2>&1 || _fail "mkfs failed"
> >  _scratch_mount
> >  mkdir $SCRATCH_MNT/subdir
> > diff --git a/tests/generic/081 b/tests/generic/081
> > index 22ac94de..4901ae2d 100755
> > --- a/tests/generic/081
> > +++ b/tests/generic/081
> > @@ -62,13 +62,13 @@ snapname=snap_$seq
> >  mnt=$TEST_DIR/mnt_$seq
> >  mkdir -p $mnt
> >  
> > -# make sure there's enough disk space for 256M lv, test for 300M here in case
> > +# make sure there's enough disk space for 400 lv, test for 512M here in case
> >  # lvm uses some space for metadata
> > -_scratch_mkfs_sized $((300 * 1024 * 1024)) >>$seqres.full 2>&1
> > +_scratch_mkfs_sized $((512 * 1024 * 1024)) >>$seqres.full 2>&1
> >  $LVM_PROG vgcreate -f $vgname $SCRATCH_DEV >>$seqres.full 2>&1
> >  # We use yes pipe instead of 'lvcreate --yes' because old version of lvm
> >  # (like 2.02.95 in RHEL6) don't support --yes option
> > -yes | $LVM_PROG lvcreate -L 256M -n $lvname $vgname >>$seqres.full 2>&1
> > +yes | $LVM_PROG lvcreate -L 400M -n $lvname $vgname >>$seqres.full 2>&1
> >  # wait for lvcreation to fully complete
> >  $UDEV_SETTLE_PROG >>$seqres.full 2>&1
> >  
> > diff --git a/tests/generic/083 b/tests/generic/083
> > index 2a5af3cc..4c79538c 100755
> > --- a/tests/generic/083
> > +++ b/tests/generic/083
> > @@ -62,7 +62,7 @@ workout()
> >  
> >  echo "*** test out-of-space handling for random write operations"
> >  
> > -filesize=`expr 256 \* 1024 \* 1024`
> > +filesize=`expr 512 \* 1024 \* 1024`
> >  agcount=6
> >  numprocs=15
> >  numops=1500
> > diff --git a/tests/generic/085 b/tests/generic/085
> > index 786d8e6f..006fcb5d 100755
> > --- a/tests/generic/085
> > +++ b/tests/generic/085
> > @@ -50,7 +50,7 @@ setup_dmdev()
> >  
> >  echo "Silence is golden"
> >  
> > -size=$((256 * 1024 * 1024))
> > +size=$((512 * 1024 * 1024))
> >  size_in_sector=$((size / 512))
> >  _scratch_mkfs_sized $size >>$seqres.full 2>&1
> >  
> > diff --git a/tests/generic/108 b/tests/generic/108
> > index efe66ba5..dc6614d2 100755
> > --- a/tests/generic/108
> > +++ b/tests/generic/108
> > @@ -46,7 +46,7 @@ physical=`blockdev --getpbsz $SCRATCH_DEV`
> >  logical=`blockdev --getss $SCRATCH_DEV`
> >  
> >  # _get_scsi_debug_dev returns a scsi debug device with 128M in size by default
> > -SCSI_DEBUG_DEV=`_get_scsi_debug_dev ${physical:-512} ${logical:-512} 0 300`
> > +SCSI_DEBUG_DEV=`_get_scsi_debug_dev ${physical:-512} ${logical:-512} 0 512`
> >  test -b "$SCSI_DEBUG_DEV" || _notrun "Failed to initialize scsi debug device"
> >  echo "SCSI debug device $SCSI_DEBUG_DEV" >>$seqres.full
> >  
> > @@ -55,7 +55,7 @@ $LVM_PROG pvcreate -f $SCSI_DEBUG_DEV $SCRATCH_DEV >>$seqres.full 2>&1
> >  $LVM_PROG vgcreate -f $vgname $SCSI_DEBUG_DEV $SCRATCH_DEV >>$seqres.full 2>&1
> >  # We use yes pipe instead of 'lvcreate --yes' because old version of lvm
> >  # (like 2.02.95 in RHEL6) don't support --yes option
> > -yes | $LVM_PROG lvcreate -i 2 -I 4m -L 275m -n $lvname $vgname \
> > +yes | $LVM_PROG lvcreate -i 2 -I 4m -L 400m -n $lvname $vgname \
> >  	>>$seqres.full 2>&1
> >  # wait for lv creation to fully complete
> >  $UDEV_SETTLE_PROG >>$seqres.full 2>&1
> > diff --git a/tests/generic/204 b/tests/generic/204
> > index a33a090f..3589b084 100755
> > --- a/tests/generic/204
> > +++ b/tests/generic/204
> > @@ -30,7 +30,7 @@ _require_scratch
> >  # time solves this problem.
> >  [ $FSTYP = "xfs" ] && MKFS_OPTIONS="$MKFS_OPTIONS -l size=16m -i maxpct=50"
> >  
> > -SIZE=`expr 115 \* 1024 \* 1024`
> > +SIZE=`expr 512 \* 1024 \* 1024`
> >  _scratch_mkfs_sized $SIZE 2> /dev/null > $tmp.mkfs.raw
> >  cat $tmp.mkfs.raw | _filter_mkfs 2> $tmp.mkfs > /dev/null
> >  _scratch_mount
> > diff --git a/tests/generic/226 b/tests/generic/226
> > index 34434730..d814b365 100755
> > --- a/tests/generic/226
> > +++ b/tests/generic/226
> > @@ -19,7 +19,7 @@ _require_odirect
> >  
> >  _scratch_unmount 2>/dev/null
> >  echo "--> mkfs 256m filesystem"
> > -_scratch_mkfs_sized `expr 256 \* 1024 \* 1024` >> $seqres.full 2>&1
> > +_scratch_mkfs_sized `expr 512 \* 1024 \* 1024` >> $seqres.full 2>&1
> >  _scratch_mount
> >  
> >  loops=16
> > diff --git a/tests/generic/250 b/tests/generic/250
> > index 97e9522f..bd1c6ffd 100755
> > --- a/tests/generic/250
> > +++ b/tests/generic/250
> > @@ -32,7 +32,7 @@ _require_odirect
> >  # bitmap consuming all the free space in our small data device.
> >  unset SCRATCH_RTDEV
> >  
> > -fssize=$((196 * 1048576))
> > +fssize=$((512 * 1048576))
> >  echo "Format and mount"
> >  $XFS_IO_PROG -d -c "pwrite -S 0x69 -b 1048576 0 $fssize" $SCRATCH_DEV >> $seqres.full
> >  _scratch_mkfs_sized $fssize > $seqres.full 2>&1
> > diff --git a/tests/generic/252 b/tests/generic/252
> > index 8c5adb53..93ab5242 100755
> > --- a/tests/generic/252
> > +++ b/tests/generic/252
> > @@ -33,7 +33,7 @@ AIO_TEST="$here/src/aio-dio-regress/aiocp"
> >  # bitmap consuming all the free space in our small data device.
> >  unset SCRATCH_RTDEV
> >  
> > -fssize=$((196 * 1048576))
> > +fssize=$((512 * 1048576))
> >  echo "Format and mount"
> >  $XFS_IO_PROG -d -c "pwrite -S 0x69 -b 1048576 0 $fssize" $SCRATCH_DEV >> $seqres.full
> >  _scratch_mkfs_sized $fssize > $seqres.full 2>&1
> > diff --git a/tests/generic/371 b/tests/generic/371
> > index a2fdaf7b..538df647 100755
> > --- a/tests/generic/371
> > +++ b/tests/generic/371
> > @@ -20,7 +20,7 @@ _require_scratch
> >  _require_xfs_io_command "falloc"
> >  test "$FSTYP" = "xfs" && _require_xfs_io_command "extsize"
> >  
> > -_scratch_mkfs_sized $((256 * 1024 * 1024)) >> $seqres.full 2>&1
> > +_scratch_mkfs_sized $((512 * 1024 * 1024)) >> $seqres.full 2>&1
> >  _scratch_mount
> >  
> >  # Disable speculative post-EOF preallocation on XFS, which can grow fast enough
> > diff --git a/tests/generic/387 b/tests/generic/387
> > index 25ca86bb..0546b7de 100755
> > --- a/tests/generic/387
> > +++ b/tests/generic/387
> > @@ -19,7 +19,7 @@ _supported_fs generic
> >  _require_scratch_reflink
> >  
> >  #btrfs needs 256mb to create default blockgroup fs
> > -_scratch_mkfs_sized $((256 * 1024 * 1024)) >> $seqres.full 2>&1
> > +_scratch_mkfs_sized $((512 * 1024 * 1024)) >> $seqres.full 2>&1
> >  _scratch_mount
> >  
> >  testfile=$SCRATCH_MNT/testfile
> > diff --git a/tests/generic/416 b/tests/generic/416
> > index deb05f07..24fdb737 100755
> > --- a/tests/generic/416
> > +++ b/tests/generic/416
> > @@ -21,7 +21,7 @@ _begin_fstest auto enospc
> >  _supported_fs generic
> >  _require_scratch
> >  
> > -fs_size=$((128 * 1024 * 1024))
> > +fs_size=$((512 * 1024 * 1024))
> >  page_size=$(get_page_size)
> >  
> >  # We will never reach this number though
> > diff --git a/tests/generic/416.out b/tests/generic/416.out
> > index 8d2ffacf..8f12447d 100644
> > --- a/tests/generic/416.out
> > +++ b/tests/generic/416.out
> > @@ -1,3 +1,3 @@
> >  QA output created by 416
> > -wrote 16777216/16777216 bytes at offset 0
> > +wrote 67108864/67108864 bytes at offset 0
> >  XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
> > diff --git a/tests/generic/427 b/tests/generic/427
> > index 26385d36..4f44c2ea 100755
> > --- a/tests/generic/427
> > +++ b/tests/generic/427
> > @@ -27,7 +27,7 @@ _require_aiodio aio-dio-eof-race
> >  _require_no_compress
> >  
> >  # limit the filesystem size, to save the time of filling filesystem
> > -_scratch_mkfs_sized $((256 * 1024 * 1024)) >>$seqres.full 2>&1
> > +_scratch_mkfs_sized $((512 * 1024 * 1024)) >>$seqres.full 2>&1
> >  _scratch_mount
> >  
> >  # try to write more bytes than filesystem size to fill the filesystem,
> > diff --git a/tests/generic/449 b/tests/generic/449
> > index 2b77a6a4..aebb5620 100755
> > --- a/tests/generic/449
> > +++ b/tests/generic/449
> > @@ -24,7 +24,7 @@ _require_test
> >  _require_acls
> >  _require_attrs trusted
> >  
> > -_scratch_mkfs_sized $((256 * 1024 * 1024)) >> $seqres.full 2>&1
> > +_scratch_mkfs_sized $((512 * 1024 * 1024)) >> $seqres.full 2>&1
> >  _scratch_mount || _fail "mount failed"
> >  
> >  # This is a test of xattr behavior when we run out of disk space for xattrs,
> > diff --git a/tests/generic/455 b/tests/generic/455
> > index 649b5410..128e87d5 100755
> > --- a/tests/generic/455
> > +++ b/tests/generic/455
> > @@ -51,7 +51,7 @@ SANITY_DIR=$TEST_DIR/fsxtests
> >  rm -rf $SANITY_DIR
> >  mkdir $SANITY_DIR
> >  
> > -devsize=$((1024*1024*200 / 512))        # 200m phys/virt size
> > +devsize=$((1024*1024*512 / 512))        # 512m phys/virt size
> >  csize=$((1024*64 / 512))                # 64k cluster size
> >  lowspace=$((1024*1024 / 512))           # 1m low space threshold
> >  
> > diff --git a/tests/generic/457 b/tests/generic/457
> > index da75798f..8604d5c5 100755
> > --- a/tests/generic/457
> > +++ b/tests/generic/457
> > @@ -55,7 +55,7 @@ SANITY_DIR=$TEST_DIR/fsxtests
> >  rm -rf $SANITY_DIR
> >  mkdir $SANITY_DIR
> >  
> > -devsize=$((1024*1024*200 / 512))        # 200m phys/virt size
> > +devsize=$((1024*1024*512 / 512))        # 512m phys/virt size
> >  csize=$((1024*64 / 512))                # 64k cluster size
> >  lowspace=$((1024*1024 / 512))           # 1m low space threshold
> >  
> > diff --git a/tests/generic/482 b/tests/generic/482
> > index 28c83a23..011e605d 100755
> > --- a/tests/generic/482
> > +++ b/tests/generic/482
> > @@ -64,7 +64,7 @@ if [ $nr_cpus -gt 8 ]; then
> >  fi
> >  fsstress_args=$(_scale_fsstress_args -w -d $SCRATCH_MNT -n 512 -p $nr_cpus \
> >  		$FSSTRESS_AVOID)
> > -devsize=$((1024*1024*200 / 512))	# 200m phys/virt size
> > +devsize=$((1024*1024*512 / 512))	# 512m phys/virt size
> >  csize=$((1024*64 / 512))		# 64k cluster size
> >  lowspace=$((1024*1024 / 512))		# 1m low space threshold
> >  
> > diff --git a/tests/generic/511 b/tests/generic/511
> > index 058d8401..8b1209d3 100755
> > --- a/tests/generic/511
> > +++ b/tests/generic/511
> > @@ -19,7 +19,7 @@ _require_scratch
> >  _require_xfs_io_command "falloc" "-k"
> >  _require_xfs_io_command "fzero"
> >  
> > -_scratch_mkfs_sized $((1024 * 1024 * 256)) >>$seqres.full 2>&1
> > +_scratch_mkfs_sized $((1024 * 1024 * 512)) >>$seqres.full 2>&1
> >  _scratch_mount
> >  
> >  $XFS_IO_PROG -fc "pwrite 0 256m" -c fsync $SCRATCH_MNT/file >>$seqres.full 2>&1
> > diff --git a/tests/generic/520 b/tests/generic/520
> > index ad6764c7..2a96dce1 100755
> > --- a/tests/generic/520
> > +++ b/tests/generic/520
> > @@ -24,8 +24,8 @@ _cleanup()
> >  . ./common/filter
> >  . ./common/dmflakey
> >  
> > -# 256MB in byte
> > -fssize=$((2**20 * 256))
> > +# 512MB in byte
> > +fssize=$((2**20 * 512))
> >  
> >  # real QA test starts here
> >  _supported_fs generic
> > diff --git a/tests/generic/536 b/tests/generic/536
> > index 986ea1ee..aac05587 100755
> > --- a/tests/generic/536
> > +++ b/tests/generic/536
> > @@ -21,7 +21,7 @@ _require_scratch
> >  _require_scratch_shutdown
> >  
> >  # create a small fs and initialize free blocks with a unique pattern
> > -_scratch_mkfs_sized $((1024 * 1024 * 100)) >> $seqres.full 2>&1
> > +_scratch_mkfs_sized $((1024 * 1024 * 512)) >> $seqres.full 2>&1
> >  _scratch_mount
> >  $XFS_IO_PROG -f -c "pwrite -S 0xab 0 100m" -c fsync $SCRATCH_MNT/spc \
> >  	>> $seqres.full 2>&1
> > diff --git a/tests/generic/619 b/tests/generic/619
> > index 6e42d677..1e883394 100755
> > --- a/tests/generic/619
> > +++ b/tests/generic/619
> > @@ -26,7 +26,7 @@
> >  . ./common/preamble
> >  _begin_fstest auto rw enospc
> >  
> > -FS_SIZE=$((240*1024*1024)) # 240MB
> > +FS_SIZE=$((512*1024*1024)) # 512MB
> >  DEBUG=1 # set to 0 to disable debug statements in shell and c-prog
> >  FACT=0.7
> >  
> > diff --git a/tests/generic/626 b/tests/generic/626
> > index 7e577798..a0411f01 100755
> > --- a/tests/generic/626
> > +++ b/tests/generic/626
> > @@ -22,7 +22,7 @@ _supported_fs generic
> >  _require_scratch
> >  _require_renameat2 whiteout
> >  
> > -_scratch_mkfs_sized $((256 * 1024 * 1024)) >> $seqres.full 2>&1
> > +_scratch_mkfs_sized $((512 * 1024 * 1024)) >> $seqres.full 2>&1
> >  _scratch_mount
> >  
> >  # Create lots of files, to help to trigger the bug easily
> > diff --git a/tests/xfs/002 b/tests/xfs/002
> > index 6c0bb4d0..53dc8b57 100755
> > --- a/tests/xfs/002
> > +++ b/tests/xfs/002
> > @@ -27,7 +27,7 @@ _require_no_large_scratch_dev
> >  # So we can explicitly turn it _off_:
> >  _require_xfs_mkfs_crc
> >  
> > -_scratch_mkfs_xfs -m crc=0 -d size=128m >> $seqres.full 2>&1 || _fail "mkfs failed"
> > +_scratch_mkfs_xfs -m crc=0 -d size=512m >> $seqres.full 2>&1 || _fail "mkfs failed"
> >  
> >  # Scribble past a couple V4 secondary superblocks to populate sb_crc
> >  # (We can't write to the structure member because it doesn't exist
> > diff --git a/tests/xfs/015 b/tests/xfs/015
> > index 2bb7b8d5..1f487cae 100755
> > --- a/tests/xfs/015
> > +++ b/tests/xfs/015
> > @@ -43,7 +43,7 @@ _scratch_mount
> >  _require_fs_space $SCRATCH_MNT 131072
> >  _scratch_unmount
> >  
> > -_scratch_mkfs_sized $((32 * 1024 * 1024)) > $tmp.mkfs.raw || _fail "mkfs failed"
> > +_scratch_mkfs_sized $((512 * 1024 * 1024)) > $tmp.mkfs.raw || _fail "mkfs failed"
> >  cat $tmp.mkfs.raw | _filter_mkfs >$seqres.full 2>$tmp.mkfs
> >  # get original data blocks number and agcount
> >  . $tmp.mkfs
> > diff --git a/tests/xfs/041 b/tests/xfs/041
> > index 05de5578..5173cfe5 100755
> > --- a/tests/xfs/041
> > +++ b/tests/xfs/041
> > @@ -38,10 +38,10 @@ _fill()
> >  }
> >  
> >  _do_die_on_error=message_only
> > -agsize=32
> > +agsize=512
> >  echo -n "Make $agsize megabyte filesystem on SCRATCH_DEV and mount... "
> > -_scratch_mkfs_xfs -dsize=${agsize}m,agcount=1 2>&1 >/dev/null || _fail "mkfs failed"
> > -bsize=`_scratch_mkfs_xfs -dsize=${agsize}m,agcount=1 2>&1 | _filter_mkfs 2>&1 \
> > +_scratch_mkfs_xfs -dsize=${agsize}m,agcount=2 2>&1 >/dev/null || _fail "mkfs failed"
> > +bsize=`_scratch_mkfs_xfs -dsize=${agsize}m,agcount=2 2>&1 | _filter_mkfs 2>&1 \
> >  		| perl -ne 'if (/dbsize=(\d+)/) {print $1;}'`
> >  onemeginblocks=`expr 1048576 / $bsize`
> >  _scratch_mount
> > @@ -51,7 +51,7 @@ echo "done"
> >  # full allocation group -> partial; partial -> expand partial + new partial;
> >  # partial -> expand partial; partial -> full
> >  # cycle through 33m -> 67m -> 75m -> 96m
> > -for size in 33 67 75 96
> > +for size in 513 1027 1059 1536
> 
> Above comment need to be changed too.
> 
> >  do
> >      grow_size=`expr $size \* $onemeginblocks`
> >      _fill $SCRATCH_MNT/fill_$size
> > diff --git a/tests/xfs/041.out b/tests/xfs/041.out
> > index 0e675804..9e2a2c6d 100644
> > --- a/tests/xfs/041.out
> > +++ b/tests/xfs/041.out
> > @@ -1,19 +1,19 @@
> >  QA output created by 041
> > -Make 32 megabyte filesystem on SCRATCH_DEV and mount... done
> > +Make 512 megabyte filesystem on SCRATCH_DEV and mount... done
> >  Fill filesystem... done
> > -Grow filesystem to 33m... done
> > +Grow filesystem to 513m... done
> >  Flush filesystem... done
> >  Check files... done
> >  Fill filesystem... done
> > -Grow filesystem to 67m... done
> > +Grow filesystem to 1027m... done
> >  Flush filesystem... done
> >  Check files... done
> >  Fill filesystem... done
> > -Grow filesystem to 75m... done
> > +Grow filesystem to 1059m... done
> >  Flush filesystem... done
> >  Check files... done
> >  Fill filesystem... done
> > -Grow filesystem to 96m... done
> > +Grow filesystem to 1536m... done
> >  Flush filesystem... done
> >  Check files... done
> >  Growfs tests passed.
> > diff --git a/tests/xfs/042 b/tests/xfs/042
> > index d62eb045..baa0f424 100755
> > --- a/tests/xfs/042
> > +++ b/tests/xfs/042
> > @@ -52,7 +52,7 @@ _require_scratch
> >  _do_die_on_error=message_only
> >  
> >  echo -n "Make a 48 megabyte filesystem on SCRATCH_DEV and mount... "
> > -_scratch_mkfs_xfs -dsize=48m,agcount=3 2>&1 >/dev/null || _fail "mkfs failed"
> > +_scratch_mkfs_xfs -dsize=512m,agcount=3 2>&1 >/dev/null || _fail "mkfs failed"
> >  _scratch_mount
> >  
> >  echo "done"
> > diff --git a/tests/xfs/049 b/tests/xfs/049
> > index 69656a85..e04769bf 100755
> > --- a/tests/xfs/049
> > +++ b/tests/xfs/049
> > @@ -57,7 +57,7 @@ mount -t ext2 $SCRATCH_DEV $SCRATCH_MNT >> $seqres.full 2>&1 \
> >      || _fail "!!! failed to mount"
> >  
> >  _log "Create xfs fs in file on scratch"
> > -${MKFS_XFS_PROG} -f -dfile,name=$SCRATCH_MNT/test.xfs,size=40m \
> > +${MKFS_XFS_PROG} -f -dfile,name=$SCRATCH_MNT/test.xfs,size=512m \
> >      >> $seqres.full 2>&1 \
> >      || _fail "!!! failed to mkfs xfs"
> >  
> > diff --git a/tests/xfs/073 b/tests/xfs/073
> > index c7616b9e..48c293e9 100755
> > --- a/tests/xfs/073
> > +++ b/tests/xfs/073
> > @@ -110,7 +110,7 @@ _require_xfs_copy
> >  _require_scratch
> >  _require_loop
> >  
> > -_scratch_mkfs_xfs -dsize=41m,agcount=2 >>$seqres.full 2>&1
> > +_scratch_mkfs_xfs -dsize=512m,agcount=2 >>$seqres.full 2>&1
> >  _scratch_mount
> >  
> >  echo
> > diff --git a/tests/xfs/076 b/tests/xfs/076
> > index 8eef1367..b352cd04 100755
> > --- a/tests/xfs/076
> > +++ b/tests/xfs/076
> > @@ -69,7 +69,7 @@ _require_xfs_sparse_inodes
> >  # bitmap consuming all the free space in our small data device.
> >  unset SCRATCH_RTDEV
> >  
> > -_scratch_mkfs "-d size=50m -m crc=1 -i sparse" | tee -a $seqres.full |
> > +_scratch_mkfs "-d size=512m -m crc=1 -i sparse" | tee -a $seqres.full |
> >  	_filter_mkfs > /dev/null 2> $tmp.mkfs
> >  . $tmp.mkfs	# for isize
> >  
> > diff --git a/tests/xfs/078 b/tests/xfs/078
> > index 1f475c96..9a24086e 100755
> > --- a/tests/xfs/078
> > +++ b/tests/xfs/078
> > @@ -103,9 +103,9 @@ _grow_loop()
> >  _grow_loop $((168024*4096)) 1376452608 4096 1
> >  
> >  # Some other blocksize cases...
> > -_grow_loop $((168024*2048)) 1376452608 2048 1
> > -_grow_loop $((168024*512)) 1376452608 512 1 16m
> > -_grow_loop $((168024*1024)) 688230400 1024 1
> > +_grow_loop $((168024*4096)) 1376452608 2048 1
> > +_grow_loop $((168024*4096)) 1376452608 512 1 16m
> > +_grow_loop $((168024*4096)) 688230400 1024 1
> >  
> >  # Other corner cases suggested by dgc
> >  # also the following doesn't check if the filesystem is consistent.
> > diff --git a/tests/xfs/078.out b/tests/xfs/078.out
> > index cc3c47d1..fe324b07 100644
> > --- a/tests/xfs/078.out
> > +++ b/tests/xfs/078.out
> > @@ -19,9 +19,9 @@ data blocks changed from 168024 to 336048
> >  *** unmount
> >  *** check
> >  
> > -=== GROWFS (from 344113152 to 1376452608, 2048 blocksize)
> > +=== GROWFS (from 688226304 to 1376452608, 2048 blocksize)
> >  
> > -*** mkfs loop file (size=344113152)
> > +*** mkfs loop file (size=688226304)
> >  meta-data=DDEV isize=XXX agcount=N, agsize=XXX blks
> >  data     = bsize=XXX blocks=XXX, imaxpct=PCT
> >           = sunit=XXX swidth=XXX, unwritten=X
> > @@ -32,14 +32,14 @@ realtime =RDEV extsz=XXX blocks=XXX, rtextents=XXX
> >  wrote 2048/2048 bytes at offset 1376452608
> >  *** mount loop filesystem
> >  *** grow loop filesystem
> > -xfs_growfs --BlockSize=2048 --Blocks=168024
> > -data blocks changed from 168024 to 672096
> > +xfs_growfs --BlockSize=2048 --Blocks=336048
> > +data blocks changed from 336048 to 672096
> >  *** unmount
> >  *** check
> >  
> > -=== GROWFS (from 86028288 to 1376452608, 512 blocksize)
> > +=== GROWFS (from 688226304 to 1376452608, 512 blocksize)
> >  
> > -*** mkfs loop file (size=86028288)
> > +*** mkfs loop file (size=688226304)
> >  meta-data=DDEV isize=XXX agcount=N, agsize=XXX blks
> >  data     = bsize=XXX blocks=XXX, imaxpct=PCT
> >           = sunit=XXX swidth=XXX, unwritten=X
> > @@ -50,14 +50,14 @@ realtime =RDEV extsz=XXX blocks=XXX, rtextents=XXX
> >  wrote 512/512 bytes at offset 1376452608
> >  *** mount loop filesystem
> >  *** grow loop filesystem
> > -xfs_growfs --BlockSize=512 --Blocks=163840
> > -data blocks changed from 163840 to 2688384
> > +xfs_growfs --BlockSize=512 --Blocks=1344192
> > +data blocks changed from 1344192 to 2688384
> >  *** unmount
> >  *** check
> >  
> > -=== GROWFS (from 172056576 to 688230400, 1024 blocksize)
> > +=== GROWFS (from 688226304 to 688230400, 1024 blocksize)
> >  
> > -*** mkfs loop file (size=172056576)
> > +*** mkfs loop file (size=688226304)
> >  meta-data=DDEV isize=XXX agcount=N, agsize=XXX blks
> >  data     = bsize=XXX blocks=XXX, imaxpct=PCT
> >           = sunit=XXX swidth=XXX, unwritten=X
> > @@ -68,8 +68,7 @@ realtime =RDEV extsz=XXX blocks=XXX, rtextents=XXX
> >  wrote 1024/1024 bytes at offset 688230400
> >  *** mount loop filesystem
> >  *** grow loop filesystem
> > -xfs_growfs --BlockSize=1024 --Blocks=168024
> > -data blocks changed from 168024 to 672096
> > +xfs_growfs --BlockSize=1024 --Blocks=672096
> >  *** unmount
> >  *** check
> >  
> > diff --git a/tests/xfs/104 b/tests/xfs/104
> > index d16f46d8..e4876633 100755
> > --- a/tests/xfs/104
> > +++ b/tests/xfs/104
> > @@ -53,14 +53,14 @@ _require_xfs_io_command "falloc"
> >  _scratch_mkfs_xfs | tee -a $seqres.full | _filter_mkfs 2>$tmp.mkfs
> >  . $tmp.mkfs	# extract blocksize and data size for scratch device
> >  
> > -endsize=`expr 550 \* 1048576`	# stop after growing this big
> > -incsize=`expr  42 \* 1048576`	# grow in chunks of this size
> > +endsize=`expr 1920 \* 1048576`	# stop after growing this big
> > +incsize=`expr 179 \* 1048576`	# grow in chunks of this size
> >  modsize=`expr   4 \* $incsize`	# pause after this many increments
> >  
> >  [ `expr $endsize / $dbsize` -lt $dblocks ] || _notrun "Scratch device too small"
> >  
> >  nags=4
> > -size=`expr 125 \* 1048576`	# 120 megabytes initially
> > +size=`expr 512 \* 1048576`	# 512 megabytes initially
> >  sizeb=`expr $size / $dbsize`	# in data blocks
> >  echo "*** creating scratch filesystem"
> >  logblks=$(_scratch_find_xfs_min_logblocks -dsize=${size} -dagcount=${nags})
> > diff --git a/tests/xfs/104.out b/tests/xfs/104.out
> > index de6c7f27..c3fc8829 100644
> > --- a/tests/xfs/104.out
> > +++ b/tests/xfs/104.out
> > @@ -95,33 +95,3 @@ log      =LDEV bsize=XXX blocks=XXX
> >  realtime =RDEV extsz=XXX blocks=XXX, rtextents=XXX
> >  AGCOUNT=14
> >  
> > -*** stressing filesystem
> > -*** growing filesystem
> > -meta-data=DDEV isize=XXX agcount=N, agsize=XXX blks
> > -data     = bsize=XXX blocks=XXX, imaxpct=PCT
> > -         = sunit=XXX swidth=XXX, unwritten=X
> > -naming   =VERN bsize=XXX
> > -log      =LDEV bsize=XXX blocks=XXX
> > -realtime =RDEV extsz=XXX blocks=XXX, rtextents=XXX
> > -AGCOUNT=15
> > -
> > -*** stressing filesystem
> > -*** growing filesystem
> > -meta-data=DDEV isize=XXX agcount=N, agsize=XXX blks
> > -data     = bsize=XXX blocks=XXX, imaxpct=PCT
> > -         = sunit=XXX swidth=XXX, unwritten=X
> > -naming   =VERN bsize=XXX
> > -log      =LDEV bsize=XXX blocks=XXX
> > -realtime =RDEV extsz=XXX blocks=XXX, rtextents=XXX
> > -AGCOUNT=17
> > -
> > -*** stressing filesystem
> > -*** growing filesystem
> > -meta-data=DDEV isize=XXX agcount=N, agsize=XXX blks
> > -data     = bsize=XXX blocks=XXX, imaxpct=PCT
> > -         = sunit=XXX swidth=XXX, unwritten=X
> > -naming   =VERN bsize=XXX
> > -log      =LDEV bsize=XXX blocks=XXX
> > -realtime =RDEV extsz=XXX blocks=XXX, rtextents=XXX
> > -AGCOUNT=18
> > -
> > diff --git a/tests/xfs/107 b/tests/xfs/107
> > index 1ea9c492..e1f9b537 100755
> > --- a/tests/xfs/107
> > +++ b/tests/xfs/107
> > @@ -23,9 +23,9 @@ _require_scratch
> >  _require_xfs_io_command allocsp		# detect presence of ALLOCSP ioctl
> >  _require_test_program allocstale
> >  
> > -# Create a 256MB filesystem to avoid running into mkfs problems with too-small
> > +# Create a 512MB filesystem to avoid running into mkfs problems with too-small
> >  # filesystems.
> > -size_mb=256
> > +size_mb=512
> >  
> >  # Write a known pattern to the disk so that we can detect stale disk blocks
> >  # being mapped into the file.  In the test author's experience, the bug will
> > diff --git a/tests/xfs/118 b/tests/xfs/118
> > index 03755b28..6fc3cdaa 100755
> > --- a/tests/xfs/118
> > +++ b/tests/xfs/118
> > @@ -27,8 +27,8 @@ _require_scratch
> >  _require_command "$XFS_FSR_PROG" "xfs_fsr"
> >  _require_xfs_io_command "falloc"
> >  
> > -# 50M
> > -_scratch_mkfs_sized $((50 * 1024 * 1024)) >> $seqres.full 2>&1
> > +# 512M
> > +_scratch_mkfs_sized $((512 * 1024 * 1024)) >> $seqres.full 2>&1
> >  _scratch_mount
> >  
> >  echo "Silence is golden"
> > diff --git a/tests/xfs/148 b/tests/xfs/148
> > index 5d0a0bf4..f64d10df 100755
> > --- a/tests/xfs/148
> > +++ b/tests/xfs/148
> > @@ -44,7 +44,7 @@ rm -f $imgfile $imgfile.old
> >  # We need to use 512 byte inodes to ensure the attr forks remain in short form
> >  # even when security xattrs are present so we are always doing name matches on
> >  # lookup and not name hash compares as leaf/node forms will do.
> > -$XFS_IO_PROG -f -c 'truncate 40m' $imgfile
> > +$XFS_IO_PROG -f -c 'truncate 512m' $imgfile
> >  loopdev=$(_create_loop_device $imgfile)
> >  MKFS_OPTIONS="-m crc=0 -i size=512" _mkfs_dev $loopdev >> $seqres.full
> >  
> > diff --git a/tests/xfs/149 b/tests/xfs/149
> > index 503eff65..49762556 100755
> > --- a/tests/xfs/149
> > +++ b/tests/xfs/149
> > @@ -42,10 +42,10 @@ _require_loop
> >  mkdir -p $mntdir || _fail "!!! failed to create temp mount dir"
> >  
> >  echo "=== mkfs.xfs ==="
> > -$MKFS_XFS_PROG -d file,name=$loopfile,size=16m -f >/dev/null 2>&1
> > +$MKFS_XFS_PROG -d file,name=$loopfile,size=512m -f >> $seqres.full 2>&1
> >  
> >  echo "=== truncate ==="
> > -$XFS_IO_PROG -fc "truncate 256m" $loopfile
> > +$XFS_IO_PROG -fc "truncate 3072m" $loopfile
> >  
> >  echo "=== create loop device ==="
> >  loop_dev=$(_create_loop_device $loopfile)
> > @@ -69,10 +69,10 @@ echo "=== mount ==="
> >  $MOUNT_PROG $loop_dev $mntdir || _fail "!!! failed to loopback mount"
> >  
> >  echo "=== xfs_growfs - check device node ==="
> > -$XFS_GROWFS_PROG -D 8192 $loop_dev > /dev/null
> > +$XFS_GROWFS_PROG -D 262144 $loop_dev > /dev/null
> >  
> >  echo "=== xfs_growfs - check device symlink ==="
> > -$XFS_GROWFS_PROG -D 12288 $loop_symlink > /dev/null
> > +$XFS_GROWFS_PROG -D 393216 $loop_symlink > /dev/null
> >  
> >  echo "=== unmount ==="
> >  $UMOUNT_PROG $mntdir || _fail "!!! failed to unmount"
> > @@ -81,10 +81,10 @@ echo "=== mount device symlink ==="
> >  $MOUNT_PROG $loop_symlink $mntdir || _fail "!!! failed to loopback mount"
> >  
> >  echo "=== xfs_growfs - check device symlink ==="
> > -$XFS_GROWFS_PROG -D 16384 $loop_symlink > /dev/null
> > +$XFS_GROWFS_PROG -D 524288 $loop_symlink > /dev/null
> >  
> >  echo "=== xfs_growfs - check device node ==="
> > -$XFS_GROWFS_PROG -D 20480 $loop_dev > /dev/null
> > +$XFS_GROWFS_PROG -D 655360 $loop_dev > /dev/null
> >  
> >  # success, all done
> >  status=0
> > diff --git a/tests/xfs/168 b/tests/xfs/168
> > index ffcd0df8..f3d5193b 100755
> > --- a/tests/xfs/168
> > +++ b/tests/xfs/168
> > @@ -51,7 +51,7 @@ _require_xfs_io_command "falloc"
> >  _scratch_mkfs_xfs | tee -a $seqres.full | _filter_mkfs 2>$tmp.mkfs >/dev/null
> >  . $tmp.mkfs	# extract blocksize and data size for scratch device
> >  
> > -endsize=`expr 125 \* 1048576`	# stop after shrinking this big
> > +endsize=`expr 300 \* 1048576`	# stop after shrinking this big
> >  [ `expr $endsize / $dbsize` -lt $dblocks ] || _notrun "Scratch device too small"
> >  
> >  nags=2
> > diff --git a/tests/xfs/170 b/tests/xfs/170
> > index b9ead341..f437fff3 100755
> > --- a/tests/xfs/170
> > +++ b/tests/xfs/170
> > @@ -31,11 +31,11 @@ _set_stream_timeout_centisecs 3000
> >  # the log for small filesystems, so we make sure there's one more AG than
> >  # filestreams to encourage the allocator to skip whichever AG owns the log.
> >  #
> > -# Exercise 9x 22MB AGs, 4 filestreams, 8 files per stream, and 3MB per file.
> > -_test_streams 9 22 4 8 3 0 0
> > -_test_streams 9 22 4 8 3 1 0
> > -_test_streams 9 22 4 8 3 0 1
> > -_test_streams 9 22 4 8 3 1 1
> > +# Exercise 9x 68MB AGs, 4 filestreams, 8 files per stream, and 9MB per file.
> > +_test_streams 9 68 4 8 9 0 0
> > +_test_streams 9 68 4 8 9 1 0
> > +_test_streams 9 68 4 8 9 0 1
> > +_test_streams 9 68 4 8 9 1 1
> >  
> >  status=0
> >  exit
> > diff --git a/tests/xfs/170.out b/tests/xfs/170.out
> > index 16dcb795..513c230d 100644
> > --- a/tests/xfs/170.out
> > +++ b/tests/xfs/170.out
> > @@ -1,20 +1,20 @@
> >  QA output created by 170
> > -# testing 9 22 4 8 3 0 0 ....
> > +# testing 9 68 4 8 9 0 0 ....
> >  # streaming
> >  # sync AGs...
> >  # checking stream AGs...
> >  + passed, streams are in seperate AGs
> > -# testing 9 22 4 8 3 1 0 ....
> > +# testing 9 68 4 8 9 1 0 ....
> >  # streaming
> >  # sync AGs...
> >  # checking stream AGs...
> >  + passed, streams are in seperate AGs
> > -# testing 9 22 4 8 3 0 1 ....
> > +# testing 9 68 4 8 9 0 1 ....
> >  # streaming
> >  # sync AGs...
> >  # checking stream AGs...
> >  + passed, streams are in seperate AGs
> > -# testing 9 22 4 8 3 1 1 ....
> > +# testing 9 68 4 8 9 1 1 ....
> >  # streaming
> >  # sync AGs...
> >  # checking stream AGs...
> > diff --git a/tests/xfs/174 b/tests/xfs/174
> > index 1245a217..3b04cd35 100755
> > --- a/tests/xfs/174
> > +++ b/tests/xfs/174
> > @@ -24,8 +24,8 @@ _check_filestreams_support || _notrun "filestreams not available"
> >  # test number of streams greater than AGs. Expected to fail.
> >  _set_stream_timeout_centisecs 6000
> >  
> > -_test_streams 8 32 65 3 1 1 0 fail
> > -_test_streams 8 32 65 3 1 0 1 fail
> > +_test_streams 8 68 72 3 1 1 0 fail
> > +_test_streams 8 68 72 3 1 0 1 fail
> >  
> >  status=0
> >  exit
> > diff --git a/tests/xfs/174.out b/tests/xfs/174.out
> > index 5df581fe..d9fea2f7 100644
> > --- a/tests/xfs/174.out
> > +++ b/tests/xfs/174.out
> > @@ -1,10 +1,10 @@
> >  QA output created by 174
> > -# testing 8 32 65 3 1 1 0 fail ....
> > +# testing 8 68 72 3 1 1 0 fail ....
> >  # streaming
> >  # sync AGs...
> >  # checking stream AGs...
> >  + expected failure, matching AGs
> > -# testing 8 32 65 3 1 0 1 fail ....
> > +# testing 8 68 72 3 1 0 1 fail ....
> >  # streaming
> >  # sync AGs...
> >  # checking stream AGs...
> > diff --git a/tests/xfs/176 b/tests/xfs/176
> > index ba4aae59..8d60cd36 100755
> > --- a/tests/xfs/176
> > +++ b/tests/xfs/176
> > @@ -23,7 +23,7 @@ _require_scratch_xfs_shrink
> >  _require_xfs_io_command "falloc"
> >  _require_xfs_io_command "fpunch"
> >  
> > -_scratch_mkfs "-d size=50m -m crc=1 -i sparse" |
> > +_scratch_mkfs "-d size=512m -m crc=1 -i sparse" |
> >  	_filter_mkfs > /dev/null 2> $tmp.mkfs
> >  . $tmp.mkfs	# for isize
> >  cat $tmp.mkfs >> $seqres.full
> > diff --git a/tests/xfs/205 b/tests/xfs/205
> > index 104f1f45..f1a8200a 100755
> > --- a/tests/xfs/205
> > +++ b/tests/xfs/205
> > @@ -23,7 +23,7 @@ _require_scratch_nocheck
> >  unset SCRATCH_RTDEV
> >  
> >  fsblksz=1024
> > -_scratch_mkfs_xfs -d size=$((32768*fsblksz)) -b size=$fsblksz >> $seqres.full 2>&1
> > +_scratch_mkfs_xfs -d size=$((524288*fsblksz)) -b size=$fsblksz >> $seqres.full 2>&1
> >  _scratch_mount
> >  
> >  # fix the reserve block pool to a known size so that the enospc calculations
> > diff --git a/tests/xfs/227 b/tests/xfs/227
> > index cd927dc4..5f5f519e 100755
> > --- a/tests/xfs/227
> > +++ b/tests/xfs/227
> > @@ -122,7 +122,7 @@ create_target_attr_last()
> >  }
> >  
> >  # use a small filesystem so we can control freespace easily
> > -_scratch_mkfs_sized $((50 * 1024 * 1024)) >> $seqres.full 2>&1
> > +_scratch_mkfs_sized $((512 * 1024 * 1024)) >> $seqres.full 2>&1
> >  _scratch_mount
> >  fragment_freespace
> >  
> > diff --git a/tests/xfs/233 b/tests/xfs/233
> > index 2b2b8666..573b7a17 100755
> > --- a/tests/xfs/233
> > +++ b/tests/xfs/233
> > @@ -18,7 +18,7 @@ _require_xfs_scratch_rmapbt
> >  _require_no_large_scratch_dev
> >  
> >  echo "Format and mount"
> > -_scratch_mkfs_sized $((2 * 4096 * 4096)) > $seqres.full 2>&1
> > +_scratch_mkfs_sized $((32 * 4096 * 4096)) > $seqres.full 2>&1
> >  _scratch_mount >> $seqres.full 2>&1
> >  
> >  testdir=$SCRATCH_MNT/test-$seq
> > diff --git a/tests/xfs/279 b/tests/xfs/279
> > index 835d187f..262f30b7 100755
> > --- a/tests/xfs/279
> > +++ b/tests/xfs/279
> > @@ -55,7 +55,7 @@ _check_mkfs()
> >  (
> >  echo "==================="
> >  echo "4k physical 512b logical aligned"
> > -SCSI_DEBUG_DEV=`_get_scsi_debug_dev 4096 512 0 128`
> > +SCSI_DEBUG_DEV=`_get_scsi_debug_dev 4096 512 0 512`
> >  test -b "$SCSI_DEBUG_DEV" || _notrun "Could not get scsi_debug device"
> >  # sector size should default to 4k
> >  _check_mkfs $SCSI_DEBUG_DEV
> > @@ -68,7 +68,7 @@ _put_scsi_debug_dev
> >  (
> >  echo "==================="
> >  echo "4k physical 512b logical unaligned"
> > -SCSI_DEBUG_DEV=`_get_scsi_debug_dev 4096 512 1 128`
> > +SCSI_DEBUG_DEV=`_get_scsi_debug_dev 4096 512 1 512`
> >  test -b "$SCSI_DEBUG_DEV" || _notrun "Could not get scsi_debug device"
> >  # should fail on misalignment
> >  _check_mkfs $SCSI_DEBUG_DEV
> > @@ -85,7 +85,7 @@ _put_scsi_debug_dev
> >  (
> >  echo "==================="
> >  echo "hard 4k physical / 4k logical"
> > -SCSI_DEBUG_DEV=`_get_scsi_debug_dev 4096 4096 0 128`
> > +SCSI_DEBUG_DEV=`_get_scsi_debug_dev 4096 4096 0 512`
> >  test -b "$SCSI_DEBUG_DEV" || _notrun "Could not get scsi_debug device"
> >  # block size smaller than sector size should fail 
> >  _check_mkfs -b size=2048 $SCSI_DEBUG_DEV
> > diff --git a/tests/xfs/289 b/tests/xfs/289
> > index c722deff..dc453b55 100755
> > --- a/tests/xfs/289
> > +++ b/tests/xfs/289
> > @@ -39,10 +39,10 @@ tmpbind=$TEST_DIR/tmpbind.$$
> >  mkdir -p $tmpdir || _fail "!!! failed to create temp mount dir"
> >  
> >  echo "=== mkfs.xfs ==="
> > -$MKFS_XFS_PROG -d file,name=$tmpfile,size=16m -f >/dev/null 2>&1
> > +$MKFS_XFS_PROG -d file,name=$tmpfile,size=512m -f >/dev/null 2>&1
> >  
> >  echo "=== truncate ==="
> > -$XFS_IO_PROG -fc "truncate 256m" $tmpfile
> > +$XFS_IO_PROG -fc "truncate 5g" $tmpfile
> >  
> >  echo "=== xfs_growfs - unmounted, command should be rejected ==="
> >  $XFS_GROWFS_PROG $tmpdir 2>&1 |  _filter_test_dir
> > @@ -61,34 +61,34 @@ echo "=== mount ==="
> >  $MOUNT_PROG -o loop $tmpfile $tmpdir || _fail "!!! failed to loopback mount"
> >  
> >  echo "=== xfs_growfs - mounted - check absolute path ==="
> > -$XFS_GROWFS_PROG -D 8192 $tmpdir | _filter_test_dir > /dev/null
> > +$XFS_GROWFS_PROG -D 262114 $tmpdir | _filter_test_dir > /dev/null
> >  
> >  echo "=== xfs_growfs - check relative path ==="
> > -$XFS_GROWFS_PROG -D 12288 ./tmpdir > /dev/null
> > +$XFS_GROWFS_PROG -D 393216 ./tmpdir > /dev/null
> >  
> >  echo "=== xfs_growfs - no path ==="
> > -$XFS_GROWFS_PROG -D 16384 tmpdir > /dev/null
> > +$XFS_GROWFS_PROG -D 524288 tmpdir > /dev/null
> >  
> >  echo "=== xfs_growfs - symbolic link ==="
> >  ln -s $tmpdir $tmpsymlink
> > -$XFS_GROWFS_PROG -D 20480 $tmpsymlink | _filter_test_dir > /dev/null
> > +$XFS_GROWFS_PROG -D 655360 $tmpsymlink | _filter_test_dir > /dev/null
> >  
> >  echo "=== xfs_growfs - symbolic link using relative path ==="
> > -$XFS_GROWFS_PROG -D 24576 ./tmpsymlink.$$ > /dev/null
> > +$XFS_GROWFS_PROG -D 786432 ./tmpsymlink.$$ > /dev/null
> >  
> >  echo "=== xfs_growfs - symbolic link using no path ==="
> > -$XFS_GROWFS_PROG -D 28672 tmpsymlink.$$ > /dev/null
> > +$XFS_GROWFS_PROG -D 917504 tmpsymlink.$$ > /dev/null
> >  
> >  echo "=== xfs_growfs - bind mount ==="
> >  mkdir $tmpbind
> >  $MOUNT_PROG -o bind $tmpdir $tmpbind
> > -$XFS_GROWFS_PROG -D 32768 $tmpbind | _filter_test_dir > /dev/null
> > +$XFS_GROWFS_PROG -D 1048576 $tmpbind | _filter_test_dir > /dev/null
> >  
> >  echo "=== xfs_growfs - bind mount - relative path ==="
> > -$XFS_GROWFS_PROG -D 36864 ./tmpbind.$$ > /dev/null
> > +$XFS_GROWFS_PROG -D 1179648 ./tmpbind.$$ > /dev/null
> >  
> >  echo "=== xfs_growfs - bind mount - no path ==="
> > -$XFS_GROWFS_PROG -D 40960 tmpbind.$$ > /dev/null
> > +$XFS_GROWFS_PROG -D 1310720 tmpbind.$$ > /dev/null
> >  
> >  echo "=== xfs_growfs - plain file - should be rejected ==="
> >  $XFS_GROWFS_PROG $tmpfile 2>&1 | _filter_test_dir
> > diff --git a/tests/xfs/291 b/tests/xfs/291
> > index a2425e47..560e8891 100755
> > --- a/tests/xfs/291
> > +++ b/tests/xfs/291
> > @@ -16,8 +16,8 @@ _supported_fs xfs
> >  
> >  # real QA test starts here
> >  _require_scratch
> > -logblks=$(_scratch_find_xfs_min_logblocks -n size=16k -d size=133m)
> > -_scratch_mkfs_xfs -n size=16k -l size=${logblks}b -d size=133m >> $seqres.full 2>&1
> > +logblks=$(_scratch_find_xfs_min_logblocks -n size=16k -d size=512m)
> > +_scratch_mkfs_xfs -n size=16k -l size=${logblks}b -d size=512m >> $seqres.full 2>&1
> >  _scratch_mount
> >  
> >  # First we cause very badly fragmented freespace, then
> > diff --git a/tests/xfs/306 b/tests/xfs/306
> > index b57bf4c0..b52285da 100755
> > --- a/tests/xfs/306
> > +++ b/tests/xfs/306
> > @@ -30,7 +30,7 @@ unset SCRATCH_RTDEV
> >  
> >  # Create a small fs with a large directory block size. We want to fill up the fs
> >  # quickly and then create multi-fsb dirblocks over fragmented free space.
> > -_scratch_mkfs_xfs -d size=20m -n size=64k >> $seqres.full 2>&1
> > +_scratch_mkfs_xfs -d size=512m -n size=64k >> $seqres.full 2>&1
> >  _scratch_mount
> >  
> >  # Fill a source directory with many largish-named files. 1k uuid-named entries
> > diff --git a/tests/xfs/514 b/tests/xfs/514
> > index cf5588f2..1243d293 100755
> > --- a/tests/xfs/514
> > +++ b/tests/xfs/514
> > @@ -37,7 +37,7 @@ esac
> >  _require_command "$(type -P $CAT)" $CAT
> >  
> >  file=$TEST_DIR/xx.$seq
> > -truncate -s 128m $file
> > +truncate -s 512m $file
> >  $MKFS_XFS_PROG $file >> /dev/null
> >  
> >  for COMMAND in `$XFS_DB_PROG -x -c help $file | awk '{print $1}' | grep -v "^Use"`; do
> > diff --git a/tests/xfs/520 b/tests/xfs/520
> > index 2fceb07c..d9e252bd 100755
> > --- a/tests/xfs/520
> > +++ b/tests/xfs/520
> > @@ -60,7 +60,7 @@ force_crafted_metadata() {
> >  }
> >  
> >  bigval=100000000
> > -fsdsopt="-d agcount=1,size=64m"
> > +fsdsopt="-d agcount=1,size=512m"
> >  
> >  force_crafted_metadata freeblks 0 "agf 0"
> >  force_crafted_metadata longest $bigval "agf 0"
> > -- 
> > 2.31.1
> > 
> 

^ permalink raw reply	[flat|nested] 20+ messages in thread

* Re: [PATCH v3 4/4] xfs/144: remove testing root dir inode in AG 1
  2022-08-30  7:49   ` Zorro Lang
@ 2022-08-30 14:59     ` Darrick J. Wong
  2022-08-30 23:45       ` Murphy Zhou
  2022-08-30 23:42     ` Murphy Zhou
  1 sibling, 1 reply; 20+ messages in thread
From: Darrick J. Wong @ 2022-08-30 14:59 UTC (permalink / raw)
  To: Zorro Lang; +Cc: Murphy Zhou, fstests, linux-xfs

On Tue, Aug 30, 2022 at 03:49:36PM +0800, Zorro Lang wrote:
> On Tue, Aug 30, 2022 at 12:44:33PM +0800, Murphy Zhou wrote:
> > Since this xfsprogs commit
> >   1b580a773 mkfs: don't let internal logs bump the root dir inode chunk to AG 1
> > this operation is not allowed.
> > 
> > Signed-off-by: Murphy Zhou <jencce.kernel@gmail.com>
> > ---
> >  tests/xfs/144 | 10 +---------
> >  1 file changed, 1 insertion(+), 9 deletions(-)
> > 
> > diff --git a/tests/xfs/144 b/tests/xfs/144
> > index 706aff61..3f80d0ee 100755
> > --- a/tests/xfs/144
> > +++ b/tests/xfs/144
> > @@ -17,9 +17,6 @@ _begin_fstest auto mkfs
> >  _supported_fs xfs
> >  _require_test
> >  
> > -# The last testcase creates a (sparse) fs image with a 2GB log, so we need
> > -# 3GB to avoid failing the mkfs due to ENOSPC.
> > -_require_fs_space $TEST_DIR $((3 * 1048576))
> >  echo Silence is golden
> >  
> >  testfile=$TEST_DIR/a
> > @@ -36,7 +33,7 @@ test_format() {
> >  }
> >  
> >  # First we try various small filesystems and stripe sizes.
> > -for M in `seq 298 302` `seq 490 520`; do
> > +for M in `seq 1024 1030` ; do
> 
> Can `seq 1024 1030` replace `seq 298 302` `seq 490 520`? I don't know how
> Darrick choose these numbers, better to ask the original authoer of this
> case. Others looks reasonable for me.

Those sequences were a result of Eric prying broken edge-cases out of
the original patch series, so I wired them up in the test.

> Thanks,
> Zorro
> 
> >  	for S in `seq 32 4 64`; do
> >  		test_format "M=$M S=$S" -dsu=${S}k,sw=1,size=${M}m -N
> >  	done
> > @@ -45,11 +42,6 @@ done
> >  # log end rounded beyond EOAG due to stripe unit
> >  test_format "log end beyond eoag" -d agcount=3200,size=6366g -d su=256k,sw=4 -N
> >  
> > -# Log so large it pushes the root dir into AG 1.  We can't use -N for the mkfs
> > -# because this check only occurs after the root directory has been allocated,
> > -# which mkfs -N doesn't do.
> > -test_format "log pushes rootdir into AG 1" -d agcount=3200,size=6366g -lagnum=0

Also, why remove this bit?  Surely we ought to keep it just in case
someone accidentally breaks the mkfs code again?

--D

> >  # success, all done
> >  status=0
> >  exit
> > -- 
> > 2.31.1
> > 
> 

^ permalink raw reply	[flat|nested] 20+ messages in thread

* Re: [PATCH v3 3/4] tests/xfs: remove single-AG options
  2022-08-30  4:44 ` [PATCH v3 3/4] tests/xfs: remove single-AG options Murphy Zhou
  2022-08-30 13:42   ` Zorro Lang
@ 2022-08-30 15:05   ` Darrick J. Wong
  2022-08-31  0:10     ` Murphy Zhou
  1 sibling, 1 reply; 20+ messages in thread
From: Darrick J. Wong @ 2022-08-30 15:05 UTC (permalink / raw)
  To: Murphy Zhou; +Cc: fstests, linux-xfs

On Tue, Aug 30, 2022 at 12:44:32PM +0800, Murphy Zhou wrote:
> Since this xfsprogs commit:
> 	6e0ed3d19c54 mkfs: stop allowing tiny filesystems
> Single-AG xfs is not allowed.
> 
> Remove agcount=1 from mkfs options and xfs/202 entirely.

It's not supported for /new/ filesystems, but the rest of the tools must
continue the same levels of support for existing filesystems, even if
they cannot be created today.

Second, there exist fstests that need to create a specific layout to
test some part of the code.  Single-AG filesystems sometimes make this
much easier.

Both of these reasons are why fstests (and LTP) get a special pass on
all the new checks in mkfs 5.19.

IOWs, we still need to check that xfs_repair works ok for existing
single AG filesystems.  We can perhaps drop these tests in a decade or
so, but now is premature.

--D

> Signed-off-by: Murphy Zhou <jencce.kernel@gmail.com>
> ---
>  tests/xfs/179     |  2 +-
>  tests/xfs/202     | 40 ----------------------------------------
>  tests/xfs/202.out | 29 -----------------------------
>  tests/xfs/520     |  2 +-
>  4 files changed, 2 insertions(+), 71 deletions(-)
>  delete mode 100755 tests/xfs/202
>  delete mode 100644 tests/xfs/202.out
> 
> diff --git a/tests/xfs/179 b/tests/xfs/179
> index ec0cb7e5..f0169717 100755
> --- a/tests/xfs/179
> +++ b/tests/xfs/179
> @@ -22,7 +22,7 @@ _require_cp_reflink
>  _require_test_program "punch-alternating"
>  
>  echo "Format and mount"
> -_scratch_mkfs -d agcount=1 > $seqres.full 2>&1
> +_scratch_mkfs > $seqres.full 2>&1
>  _scratch_mount >> $seqres.full 2>&1
>  
>  testdir=$SCRATCH_MNT/test-$seq
> diff --git a/tests/xfs/202 b/tests/xfs/202
> deleted file mode 100755
> index 5075d3a1..00000000
> --- a/tests/xfs/202
> +++ /dev/null
> @@ -1,40 +0,0 @@
> -#! /bin/bash
> -# SPDX-License-Identifier: GPL-2.0
> -# Copyright (c) 2009 Christoph Hellwig.
> -#
> -# FS QA Test No. 202
> -#
> -# Test out the xfs_repair -o force_geometry option on single-AG filesystems.
> -#
> -. ./common/preamble
> -_begin_fstest repair auto quick
> -
> -# Import common functions.
> -. ./common/filter
> -. ./common/repair
> -
> -# real QA test starts here
> -_supported_fs xfs
> -
> -# single AG will cause default xfs_repair to fail. This test is actually
> -# testing the special corner case option needed to repair a single AG fs.
> -_require_scratch_nocheck
> -
> -#
> -# The AG size is limited to 1TB (or even less with historic xfsprogs),
> -# so chose a small enough filesystem to make sure we can actually create
> -# a single AG filesystem.
> -#
> -echo "== Creating single-AG filesystem =="
> -_scratch_mkfs_xfs -d agcount=1 -d size=$((1024*1024*1024)) >/dev/null 2>&1 \
> - || _fail "!!! failed to make filesystem with single AG"
> -
> -echo "== Trying to repair it (should fail) =="
> -_scratch_xfs_repair
> -
> -echo "== Trying to repair it with -o force_geometry =="
> -_scratch_xfs_repair -o force_geometry 2>&1 | _filter_repair
> -
> -# success, all done
> -echo "*** done"
> -status=0
> diff --git a/tests/xfs/202.out b/tests/xfs/202.out
> deleted file mode 100644
> index c2c5c881..00000000
> --- a/tests/xfs/202.out
> +++ /dev/null
> @@ -1,29 +0,0 @@
> -QA output created by 202
> -== Creating single-AG filesystem ==
> -== Trying to repair it (should fail) ==
> -Phase 1 - find and verify superblock...
> -Only one AG detected - cannot validate filesystem geometry.
> -Use the -o force_geometry option to proceed.
> -== Trying to repair it with -o force_geometry ==
> -Phase 1 - find and verify superblock...
> -Phase 2 - using <TYPEOF> log
> -        - zero log...
> -        - scan filesystem freespace and inode maps...
> -        - found root inode chunk
> -Phase 3 - for each AG...
> -        - scan and clear agi unlinked lists...
> -        - process known inodes and perform inode discovery...
> -        - process newly discovered inodes...
> -Phase 4 - check for duplicate blocks...
> -        - setting up duplicate extent list...
> -        - check for inodes claiming duplicate blocks...
> -Phase 5 - rebuild AG headers and trees...
> -        - reset superblock...
> -Phase 6 - check inode connectivity...
> -        - resetting contents of realtime bitmap and summary inodes
> -        - traversing filesystem ...
> -        - traversal finished ...
> -        - moving disconnected inodes to lost+found ...
> -Phase 7 - verify and correct link counts...
> -done
> -*** done
> diff --git a/tests/xfs/520 b/tests/xfs/520
> index d9e252bd..de70db60 100755
> --- a/tests/xfs/520
> +++ b/tests/xfs/520
> @@ -60,7 +60,7 @@ force_crafted_metadata() {
>  }
>  
>  bigval=100000000
> -fsdsopt="-d agcount=1,size=512m"
> +fsdsopt="-d size=512m"
>  
>  force_crafted_metadata freeblks 0 "agf 0"
>  force_crafted_metadata longest $bigval "agf 0"
> -- 
> 2.31.1
> 

^ permalink raw reply	[flat|nested] 20+ messages in thread

* Re: [PATCH v3 1/4] tests: increase fs size for mkfs
  2022-08-30 14:46     ` Darrick J. Wong
@ 2022-08-30 19:07       ` Zorro Lang
  2022-08-31  0:18         ` Murphy Zhou
  0 siblings, 1 reply; 20+ messages in thread
From: Zorro Lang @ 2022-08-30 19:07 UTC (permalink / raw)
  To: Darrick J. Wong; +Cc: Murphy Zhou, fstests, linux-xfs

On Tue, Aug 30, 2022 at 07:46:40AM -0700, Darrick J. Wong wrote:
> On Tue, Aug 30, 2022 at 03:36:34PM +0800, Zorro Lang wrote:
> > On Tue, Aug 30, 2022 at 12:44:30PM +0800, Murphy Zhou wrote:
> > > Since this xfsprogs commit:
> > > 	6e0ed3d19c54 mkfs: stop allowing tiny filesystems
> > > XFS requires filesystem size bigger then 300m.
> > 
> > I'm wondering if we can just use 300M, or 512M is better. CC linux-xfs to
> > get more discussion about how to deal with this change on mkfs.xfs.
> > 
> > > 
> > > Increase thoese numbers to 512M at least. There is no special
> > > reason for the magic number 512, just double it from original
> > > 256M and being reasonable small.
> > 
> > Hmm... do we need a global parameter to define the minimal XFS size,
> > or even minimal local fs size? e.g. MIN_XFS_SIZE, or MIN_FS_SIZE ...
> 
> I think it would be a convenient time to create a helper to capture
> that, seeing as the LTP developers recently let slip that they have such
> a thing somewhere, and min fs size logic is scattered around fstests.

It's a little hard to find out all cases which use the minimal fs size.
But for xfs, I think we can do that with this chance. We can have:

  export XFS_MIN_SIZE=$((300 * 1024 * 1024))
  export XFS_MIN_LOG_SIZE=$((64 * 1024 * 1024))

at first, then init minimal $FSTYP size likes:

  init_min_fs_size()
  {
      case $FSTYP in
      xfs)
          FS_MIN_SIZE=$XFS_MIN_SIZE
	  ;;
      *)
          FS_MIN_SIZE="unlimited"  # or a big enough size??
	  ;;
      esac
  }

Then other fs can follow this to add their size limitation.
Any better ideas?

Thanks,
Zorro

> 
> --D
> 
> > > 
> > > Signed-off-by: Murphy Zhou <jencce.kernel@gmail.com>
> > > ---
> > >  common/config         |  2 +-
> > >  common/xfs            |  2 +-
> > >  tests/generic/015     |  2 +-
> > >  tests/generic/027     |  2 +-
> > >  tests/generic/042     |  3 +++
> > >  tests/generic/077     |  2 +-
> > >  tests/generic/081     |  6 +++---
> > >  tests/generic/083     |  2 +-
> > >  tests/generic/085     |  2 +-
> > >  tests/generic/108     |  4 ++--
> > >  tests/generic/204     |  2 +-
> > >  tests/generic/226     |  2 +-
> > >  tests/generic/250     |  2 +-
> > >  tests/generic/252     |  2 +-
> > >  tests/generic/371     |  2 +-
> > >  tests/generic/387     |  2 +-
> > >  tests/generic/416     |  2 +-
> > >  tests/generic/416.out |  2 +-
> > >  tests/generic/427     |  2 +-
> > >  tests/generic/449     |  2 +-
> > >  tests/generic/455     |  2 +-
> > >  tests/generic/457     |  2 +-
> > >  tests/generic/482     |  2 +-
> > >  tests/generic/511     |  2 +-
> > >  tests/generic/520     |  4 ++--
> > >  tests/generic/536     |  2 +-
> > >  tests/generic/619     |  2 +-
> > >  tests/generic/626     |  2 +-
> > >  tests/xfs/002         |  2 +-
> > >  tests/xfs/015         |  2 +-
> > >  tests/xfs/041         |  8 ++++----
> > >  tests/xfs/041.out     | 10 +++++-----
> > >  tests/xfs/042         |  2 +-
> > >  tests/xfs/049         |  2 +-
> > >  tests/xfs/073         |  2 +-
> > >  tests/xfs/076         |  2 +-
> > >  tests/xfs/078         |  6 +++---
> > >  tests/xfs/078.out     | 23 +++++++++++------------
> > >  tests/xfs/104         |  6 +++---
> > >  tests/xfs/104.out     | 30 ------------------------------
> > >  tests/xfs/107         |  4 ++--
> > >  tests/xfs/118         |  4 ++--
> > >  tests/xfs/148         |  2 +-
> > >  tests/xfs/149         | 12 ++++++------
> > >  tests/xfs/168         |  2 +-
> > >  tests/xfs/170         | 10 +++++-----
> > >  tests/xfs/170.out     |  8 ++++----
> > >  tests/xfs/174         |  4 ++--
> > >  tests/xfs/174.out     |  4 ++--
> > >  tests/xfs/176         |  2 +-
> > >  tests/xfs/205         |  2 +-
> > >  tests/xfs/227         |  2 +-
> > >  tests/xfs/233         |  2 +-
> > >  tests/xfs/279         |  6 +++---
> > >  tests/xfs/289         | 22 +++++++++++-----------
> > >  tests/xfs/291         |  4 ++--
> > >  tests/xfs/306         |  2 +-
> > >  tests/xfs/514         |  2 +-
> > >  tests/xfs/520         |  2 +-
> > >  59 files changed, 114 insertions(+), 142 deletions(-)
> > > 
> > > diff --git a/common/config b/common/config
> > > index c30eec6d..45b7650b 100644
> > > --- a/common/config
> > > +++ b/common/config
> > > @@ -325,7 +325,7 @@ fi
> > >  if [ "$FSTYP" == "xfs" ]; then
> > >  	XFS_MKFS_HAS_NO_META_SUPPORT=""
> > >  	touch /tmp/crc_check.img
> > > -	$MKFS_XFS_PROG -N -d file,name=/tmp/crc_check.img,size=32m -m crc=0 \
> > > +	$MKFS_XFS_PROG -N -d file,name=/tmp/crc_check.img,size=512m -m crc=0 \
> > >  		>/dev/null 2>&1;
> > >  	if [ $? -ne 0 ]; then
> > >  		XFS_MKFS_HAS_NO_META_SUPPORT=true
> > > diff --git a/common/xfs b/common/xfs
> > > index 9f84dffb..efabb0ad 100644
> > > --- a/common/xfs
> > > +++ b/common/xfs
> > > @@ -1176,7 +1176,7 @@ _require_xfs_copy()
> > >  	# xfs_copy on v5 filesystems do not require the "-d" option if xfs_db
> > >  	# can change the UUID on v5 filesystems
> > >  	touch /tmp/$$.img
> > > -	$MKFS_XFS_PROG -d file,name=/tmp/$$.img,size=64m >/dev/null 2>&1
> > > +	$MKFS_XFS_PROG -d file,name=/tmp/$$.img,size=512m >/dev/null 2>&1
> > >  
> > >  	# xfs_db will return 0 even if it can't generate a new uuid, so
> > >  	# check the output to make sure if it can change UUID of V5 xfs
> > > diff --git a/tests/generic/015 b/tests/generic/015
> > > index 10423a29..f6804897 100755
> > > --- a/tests/generic/015
> > > +++ b/tests/generic/015
> > > @@ -31,7 +31,7 @@ _require_no_large_scratch_dev
> > >  
> > >  # btrfs needs at least 256MB (with upward round off) to create a non-mixed mode
> > >  # fs. Ref: btrfs-progs: btrfs_min_dev_size()
> > > -_scratch_mkfs_sized $((256 * 1024 * 1024)) >> $seqres.full 2>&1 \
> > > +_scratch_mkfs_sized $((512 * 1024 * 1024)) >> $seqres.full 2>&1 \
> > 
> > As you change the 256 to 512 at here, better to change above comment which says
> > why 256M is needed.
> > 
> > >      || _fail "mkfs failed"
> > >  _scratch_mount
> > >  out=$SCRATCH_MNT/fillup.$$
> > > diff --git a/tests/generic/027 b/tests/generic/027
> > > index 47f1981d..ad8175c1 100755
> > > --- a/tests/generic/027
> > > +++ b/tests/generic/027
> > > @@ -35,7 +35,7 @@ _require_scratch
> > >  
> > >  echo "Silence is golden"
> > >  
> > > -_scratch_mkfs_sized $((256 * 1024 * 1024)) >>$seqres.full 2>&1
> > > +_scratch_mkfs_sized $((512 * 1024 * 1024)) >>$seqres.full 2>&1
> > >  _scratch_mount
> > >  
> > >  echo "Reserve 2M space" >>$seqres.full
> > > diff --git a/tests/generic/042 b/tests/generic/042
> > > index dbc65e33..54f883cd 100755
> > > --- a/tests/generic/042
> > > +++ b/tests/generic/042
> > > @@ -32,8 +32,11 @@ _crashtest()
> > >  	# f2fs-utils 1.9.0 needs at least 38 MB space for f2fs image. However,
> > >  	# f2fs-utils 1.14.0 needs at least 52 MB. Not sure if it will change
> > >  	# again. So just set it 128M.
> > > +	# xfsprogs 5.19.0 requires xfs size larger then 300m.
> > >  	if [ $FSTYP == "f2fs" ]; then
> > >  		size=128M
> > > +	elif [ $FSTYP == "xfs" ]; then
> > > +		size=512M
> > >  	fi
> > >  
> > >  	# Create an fs on a small, initialized image. The pattern is written to
> > > diff --git a/tests/generic/077 b/tests/generic/077
> > > index 94d89fae..639564ed 100755
> > > --- a/tests/generic/077
> > > +++ b/tests/generic/077
> > > @@ -49,7 +49,7 @@ echo "*** create filesystem"
> > >  _scratch_unmount >/dev/null 2>&1
> > >  echo "*** MKFS ***"                         >>$seqres.full
> > >  echo ""                                     >>$seqres.full
> > > -fs_size=$((256 * 1024 * 1024))
> > > +fs_size=$((512 * 1024 * 1024))
> > >  _scratch_mkfs_sized $fs_size >> $seqres.full 2>&1 || _fail "mkfs failed"
> > >  _scratch_mount
> > >  mkdir $SCRATCH_MNT/subdir
> > > diff --git a/tests/generic/081 b/tests/generic/081
> > > index 22ac94de..4901ae2d 100755
> > > --- a/tests/generic/081
> > > +++ b/tests/generic/081
> > > @@ -62,13 +62,13 @@ snapname=snap_$seq
> > >  mnt=$TEST_DIR/mnt_$seq
> > >  mkdir -p $mnt
> > >  
> > > -# make sure there's enough disk space for 256M lv, test for 300M here in case
> > > +# make sure there's enough disk space for 400 lv, test for 512M here in case
> > >  # lvm uses some space for metadata
> > > -_scratch_mkfs_sized $((300 * 1024 * 1024)) >>$seqres.full 2>&1
> > > +_scratch_mkfs_sized $((512 * 1024 * 1024)) >>$seqres.full 2>&1
> > >  $LVM_PROG vgcreate -f $vgname $SCRATCH_DEV >>$seqres.full 2>&1
> > >  # We use yes pipe instead of 'lvcreate --yes' because old version of lvm
> > >  # (like 2.02.95 in RHEL6) don't support --yes option
> > > -yes | $LVM_PROG lvcreate -L 256M -n $lvname $vgname >>$seqres.full 2>&1
> > > +yes | $LVM_PROG lvcreate -L 400M -n $lvname $vgname >>$seqres.full 2>&1
> > >  # wait for lvcreation to fully complete
> > >  $UDEV_SETTLE_PROG >>$seqres.full 2>&1
> > >  
> > > diff --git a/tests/generic/083 b/tests/generic/083
> > > index 2a5af3cc..4c79538c 100755
> > > --- a/tests/generic/083
> > > +++ b/tests/generic/083
> > > @@ -62,7 +62,7 @@ workout()
> > >  
> > >  echo "*** test out-of-space handling for random write operations"
> > >  
> > > -filesize=`expr 256 \* 1024 \* 1024`
> > > +filesize=`expr 512 \* 1024 \* 1024`
> > >  agcount=6
> > >  numprocs=15
> > >  numops=1500
> > > diff --git a/tests/generic/085 b/tests/generic/085
> > > index 786d8e6f..006fcb5d 100755
> > > --- a/tests/generic/085
> > > +++ b/tests/generic/085
> > > @@ -50,7 +50,7 @@ setup_dmdev()
> > >  
> > >  echo "Silence is golden"
> > >  
> > > -size=$((256 * 1024 * 1024))
> > > +size=$((512 * 1024 * 1024))
> > >  size_in_sector=$((size / 512))
> > >  _scratch_mkfs_sized $size >>$seqres.full 2>&1
> > >  
> > > diff --git a/tests/generic/108 b/tests/generic/108
> > > index efe66ba5..dc6614d2 100755
> > > --- a/tests/generic/108
> > > +++ b/tests/generic/108
> > > @@ -46,7 +46,7 @@ physical=`blockdev --getpbsz $SCRATCH_DEV`
> > >  logical=`blockdev --getss $SCRATCH_DEV`
> > >  
> > >  # _get_scsi_debug_dev returns a scsi debug device with 128M in size by default
> > > -SCSI_DEBUG_DEV=`_get_scsi_debug_dev ${physical:-512} ${logical:-512} 0 300`
> > > +SCSI_DEBUG_DEV=`_get_scsi_debug_dev ${physical:-512} ${logical:-512} 0 512`
> > >  test -b "$SCSI_DEBUG_DEV" || _notrun "Failed to initialize scsi debug device"
> > >  echo "SCSI debug device $SCSI_DEBUG_DEV" >>$seqres.full
> > >  
> > > @@ -55,7 +55,7 @@ $LVM_PROG pvcreate -f $SCSI_DEBUG_DEV $SCRATCH_DEV >>$seqres.full 2>&1
> > >  $LVM_PROG vgcreate -f $vgname $SCSI_DEBUG_DEV $SCRATCH_DEV >>$seqres.full 2>&1
> > >  # We use yes pipe instead of 'lvcreate --yes' because old version of lvm
> > >  # (like 2.02.95 in RHEL6) don't support --yes option
> > > -yes | $LVM_PROG lvcreate -i 2 -I 4m -L 275m -n $lvname $vgname \
> > > +yes | $LVM_PROG lvcreate -i 2 -I 4m -L 400m -n $lvname $vgname \
> > >  	>>$seqres.full 2>&1
> > >  # wait for lv creation to fully complete
> > >  $UDEV_SETTLE_PROG >>$seqres.full 2>&1
> > > diff --git a/tests/generic/204 b/tests/generic/204
> > > index a33a090f..3589b084 100755
> > > --- a/tests/generic/204
> > > +++ b/tests/generic/204
> > > @@ -30,7 +30,7 @@ _require_scratch
> > >  # time solves this problem.
> > >  [ $FSTYP = "xfs" ] && MKFS_OPTIONS="$MKFS_OPTIONS -l size=16m -i maxpct=50"
> > >  
> > > -SIZE=`expr 115 \* 1024 \* 1024`
> > > +SIZE=`expr 512 \* 1024 \* 1024`
> > >  _scratch_mkfs_sized $SIZE 2> /dev/null > $tmp.mkfs.raw
> > >  cat $tmp.mkfs.raw | _filter_mkfs 2> $tmp.mkfs > /dev/null
> > >  _scratch_mount
> > > diff --git a/tests/generic/226 b/tests/generic/226
> > > index 34434730..d814b365 100755
> > > --- a/tests/generic/226
> > > +++ b/tests/generic/226
> > > @@ -19,7 +19,7 @@ _require_odirect
> > >  
> > >  _scratch_unmount 2>/dev/null
> > >  echo "--> mkfs 256m filesystem"
> > > -_scratch_mkfs_sized `expr 256 \* 1024 \* 1024` >> $seqres.full 2>&1
> > > +_scratch_mkfs_sized `expr 512 \* 1024 \* 1024` >> $seqres.full 2>&1
> > >  _scratch_mount
> > >  
> > >  loops=16
> > > diff --git a/tests/generic/250 b/tests/generic/250
> > > index 97e9522f..bd1c6ffd 100755
> > > --- a/tests/generic/250
> > > +++ b/tests/generic/250
> > > @@ -32,7 +32,7 @@ _require_odirect
> > >  # bitmap consuming all the free space in our small data device.
> > >  unset SCRATCH_RTDEV
> > >  
> > > -fssize=$((196 * 1048576))
> > > +fssize=$((512 * 1048576))
> > >  echo "Format and mount"
> > >  $XFS_IO_PROG -d -c "pwrite -S 0x69 -b 1048576 0 $fssize" $SCRATCH_DEV >> $seqres.full
> > >  _scratch_mkfs_sized $fssize > $seqres.full 2>&1
> > > diff --git a/tests/generic/252 b/tests/generic/252
> > > index 8c5adb53..93ab5242 100755
> > > --- a/tests/generic/252
> > > +++ b/tests/generic/252
> > > @@ -33,7 +33,7 @@ AIO_TEST="$here/src/aio-dio-regress/aiocp"
> > >  # bitmap consuming all the free space in our small data device.
> > >  unset SCRATCH_RTDEV
> > >  
> > > -fssize=$((196 * 1048576))
> > > +fssize=$((512 * 1048576))
> > >  echo "Format and mount"
> > >  $XFS_IO_PROG -d -c "pwrite -S 0x69 -b 1048576 0 $fssize" $SCRATCH_DEV >> $seqres.full
> > >  _scratch_mkfs_sized $fssize > $seqres.full 2>&1
> > > diff --git a/tests/generic/371 b/tests/generic/371
> > > index a2fdaf7b..538df647 100755
> > > --- a/tests/generic/371
> > > +++ b/tests/generic/371
> > > @@ -20,7 +20,7 @@ _require_scratch
> > >  _require_xfs_io_command "falloc"
> > >  test "$FSTYP" = "xfs" && _require_xfs_io_command "extsize"
> > >  
> > > -_scratch_mkfs_sized $((256 * 1024 * 1024)) >> $seqres.full 2>&1
> > > +_scratch_mkfs_sized $((512 * 1024 * 1024)) >> $seqres.full 2>&1
> > >  _scratch_mount
> > >  
> > >  # Disable speculative post-EOF preallocation on XFS, which can grow fast enough
> > > diff --git a/tests/generic/387 b/tests/generic/387
> > > index 25ca86bb..0546b7de 100755
> > > --- a/tests/generic/387
> > > +++ b/tests/generic/387
> > > @@ -19,7 +19,7 @@ _supported_fs generic
> > >  _require_scratch_reflink
> > >  
> > >  #btrfs needs 256mb to create default blockgroup fs
> > > -_scratch_mkfs_sized $((256 * 1024 * 1024)) >> $seqres.full 2>&1
> > > +_scratch_mkfs_sized $((512 * 1024 * 1024)) >> $seqres.full 2>&1
> > >  _scratch_mount
> > >  
> > >  testfile=$SCRATCH_MNT/testfile
> > > diff --git a/tests/generic/416 b/tests/generic/416
> > > index deb05f07..24fdb737 100755
> > > --- a/tests/generic/416
> > > +++ b/tests/generic/416
> > > @@ -21,7 +21,7 @@ _begin_fstest auto enospc
> > >  _supported_fs generic
> > >  _require_scratch
> > >  
> > > -fs_size=$((128 * 1024 * 1024))
> > > +fs_size=$((512 * 1024 * 1024))
> > >  page_size=$(get_page_size)
> > >  
> > >  # We will never reach this number though
> > > diff --git a/tests/generic/416.out b/tests/generic/416.out
> > > index 8d2ffacf..8f12447d 100644
> > > --- a/tests/generic/416.out
> > > +++ b/tests/generic/416.out
> > > @@ -1,3 +1,3 @@
> > >  QA output created by 416
> > > -wrote 16777216/16777216 bytes at offset 0
> > > +wrote 67108864/67108864 bytes at offset 0
> > >  XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
> > > diff --git a/tests/generic/427 b/tests/generic/427
> > > index 26385d36..4f44c2ea 100755
> > > --- a/tests/generic/427
> > > +++ b/tests/generic/427
> > > @@ -27,7 +27,7 @@ _require_aiodio aio-dio-eof-race
> > >  _require_no_compress
> > >  
> > >  # limit the filesystem size, to save the time of filling filesystem
> > > -_scratch_mkfs_sized $((256 * 1024 * 1024)) >>$seqres.full 2>&1
> > > +_scratch_mkfs_sized $((512 * 1024 * 1024)) >>$seqres.full 2>&1
> > >  _scratch_mount
> > >  
> > >  # try to write more bytes than filesystem size to fill the filesystem,
> > > diff --git a/tests/generic/449 b/tests/generic/449
> > > index 2b77a6a4..aebb5620 100755
> > > --- a/tests/generic/449
> > > +++ b/tests/generic/449
> > > @@ -24,7 +24,7 @@ _require_test
> > >  _require_acls
> > >  _require_attrs trusted
> > >  
> > > -_scratch_mkfs_sized $((256 * 1024 * 1024)) >> $seqres.full 2>&1
> > > +_scratch_mkfs_sized $((512 * 1024 * 1024)) >> $seqres.full 2>&1
> > >  _scratch_mount || _fail "mount failed"
> > >  
> > >  # This is a test of xattr behavior when we run out of disk space for xattrs,
> > > diff --git a/tests/generic/455 b/tests/generic/455
> > > index 649b5410..128e87d5 100755
> > > --- a/tests/generic/455
> > > +++ b/tests/generic/455
> > > @@ -51,7 +51,7 @@ SANITY_DIR=$TEST_DIR/fsxtests
> > >  rm -rf $SANITY_DIR
> > >  mkdir $SANITY_DIR
> > >  
> > > -devsize=$((1024*1024*200 / 512))        # 200m phys/virt size
> > > +devsize=$((1024*1024*512 / 512))        # 512m phys/virt size
> > >  csize=$((1024*64 / 512))                # 64k cluster size
> > >  lowspace=$((1024*1024 / 512))           # 1m low space threshold
> > >  
> > > diff --git a/tests/generic/457 b/tests/generic/457
> > > index da75798f..8604d5c5 100755
> > > --- a/tests/generic/457
> > > +++ b/tests/generic/457
> > > @@ -55,7 +55,7 @@ SANITY_DIR=$TEST_DIR/fsxtests
> > >  rm -rf $SANITY_DIR
> > >  mkdir $SANITY_DIR
> > >  
> > > -devsize=$((1024*1024*200 / 512))        # 200m phys/virt size
> > > +devsize=$((1024*1024*512 / 512))        # 512m phys/virt size
> > >  csize=$((1024*64 / 512))                # 64k cluster size
> > >  lowspace=$((1024*1024 / 512))           # 1m low space threshold
> > >  
> > > diff --git a/tests/generic/482 b/tests/generic/482
> > > index 28c83a23..011e605d 100755
> > > --- a/tests/generic/482
> > > +++ b/tests/generic/482
> > > @@ -64,7 +64,7 @@ if [ $nr_cpus -gt 8 ]; then
> > >  fi
> > >  fsstress_args=$(_scale_fsstress_args -w -d $SCRATCH_MNT -n 512 -p $nr_cpus \
> > >  		$FSSTRESS_AVOID)
> > > -devsize=$((1024*1024*200 / 512))	# 200m phys/virt size
> > > +devsize=$((1024*1024*512 / 512))	# 512m phys/virt size
> > >  csize=$((1024*64 / 512))		# 64k cluster size
> > >  lowspace=$((1024*1024 / 512))		# 1m low space threshold
> > >  
> > > diff --git a/tests/generic/511 b/tests/generic/511
> > > index 058d8401..8b1209d3 100755
> > > --- a/tests/generic/511
> > > +++ b/tests/generic/511
> > > @@ -19,7 +19,7 @@ _require_scratch
> > >  _require_xfs_io_command "falloc" "-k"
> > >  _require_xfs_io_command "fzero"
> > >  
> > > -_scratch_mkfs_sized $((1024 * 1024 * 256)) >>$seqres.full 2>&1
> > > +_scratch_mkfs_sized $((1024 * 1024 * 512)) >>$seqres.full 2>&1
> > >  _scratch_mount
> > >  
> > >  $XFS_IO_PROG -fc "pwrite 0 256m" -c fsync $SCRATCH_MNT/file >>$seqres.full 2>&1
> > > diff --git a/tests/generic/520 b/tests/generic/520
> > > index ad6764c7..2a96dce1 100755
> > > --- a/tests/generic/520
> > > +++ b/tests/generic/520
> > > @@ -24,8 +24,8 @@ _cleanup()
> > >  . ./common/filter
> > >  . ./common/dmflakey
> > >  
> > > -# 256MB in byte
> > > -fssize=$((2**20 * 256))
> > > +# 512MB in byte
> > > +fssize=$((2**20 * 512))
> > >  
> > >  # real QA test starts here
> > >  _supported_fs generic
> > > diff --git a/tests/generic/536 b/tests/generic/536
> > > index 986ea1ee..aac05587 100755
> > > --- a/tests/generic/536
> > > +++ b/tests/generic/536
> > > @@ -21,7 +21,7 @@ _require_scratch
> > >  _require_scratch_shutdown
> > >  
> > >  # create a small fs and initialize free blocks with a unique pattern
> > > -_scratch_mkfs_sized $((1024 * 1024 * 100)) >> $seqres.full 2>&1
> > > +_scratch_mkfs_sized $((1024 * 1024 * 512)) >> $seqres.full 2>&1
> > >  _scratch_mount
> > >  $XFS_IO_PROG -f -c "pwrite -S 0xab 0 100m" -c fsync $SCRATCH_MNT/spc \
> > >  	>> $seqres.full 2>&1
> > > diff --git a/tests/generic/619 b/tests/generic/619
> > > index 6e42d677..1e883394 100755
> > > --- a/tests/generic/619
> > > +++ b/tests/generic/619
> > > @@ -26,7 +26,7 @@
> > >  . ./common/preamble
> > >  _begin_fstest auto rw enospc
> > >  
> > > -FS_SIZE=$((240*1024*1024)) # 240MB
> > > +FS_SIZE=$((512*1024*1024)) # 512MB
> > >  DEBUG=1 # set to 0 to disable debug statements in shell and c-prog
> > >  FACT=0.7
> > >  
> > > diff --git a/tests/generic/626 b/tests/generic/626
> > > index 7e577798..a0411f01 100755
> > > --- a/tests/generic/626
> > > +++ b/tests/generic/626
> > > @@ -22,7 +22,7 @@ _supported_fs generic
> > >  _require_scratch
> > >  _require_renameat2 whiteout
> > >  
> > > -_scratch_mkfs_sized $((256 * 1024 * 1024)) >> $seqres.full 2>&1
> > > +_scratch_mkfs_sized $((512 * 1024 * 1024)) >> $seqres.full 2>&1
> > >  _scratch_mount
> > >  
> > >  # Create lots of files, to help to trigger the bug easily
> > > diff --git a/tests/xfs/002 b/tests/xfs/002
> > > index 6c0bb4d0..53dc8b57 100755
> > > --- a/tests/xfs/002
> > > +++ b/tests/xfs/002
> > > @@ -27,7 +27,7 @@ _require_no_large_scratch_dev
> > >  # So we can explicitly turn it _off_:
> > >  _require_xfs_mkfs_crc
> > >  
> > > -_scratch_mkfs_xfs -m crc=0 -d size=128m >> $seqres.full 2>&1 || _fail "mkfs failed"
> > > +_scratch_mkfs_xfs -m crc=0 -d size=512m >> $seqres.full 2>&1 || _fail "mkfs failed"
> > >  
> > >  # Scribble past a couple V4 secondary superblocks to populate sb_crc
> > >  # (We can't write to the structure member because it doesn't exist
> > > diff --git a/tests/xfs/015 b/tests/xfs/015
> > > index 2bb7b8d5..1f487cae 100755
> > > --- a/tests/xfs/015
> > > +++ b/tests/xfs/015
> > > @@ -43,7 +43,7 @@ _scratch_mount
> > >  _require_fs_space $SCRATCH_MNT 131072
> > >  _scratch_unmount
> > >  
> > > -_scratch_mkfs_sized $((32 * 1024 * 1024)) > $tmp.mkfs.raw || _fail "mkfs failed"
> > > +_scratch_mkfs_sized $((512 * 1024 * 1024)) > $tmp.mkfs.raw || _fail "mkfs failed"
> > >  cat $tmp.mkfs.raw | _filter_mkfs >$seqres.full 2>$tmp.mkfs
> > >  # get original data blocks number and agcount
> > >  . $tmp.mkfs
> > > diff --git a/tests/xfs/041 b/tests/xfs/041
> > > index 05de5578..5173cfe5 100755
> > > --- a/tests/xfs/041
> > > +++ b/tests/xfs/041
> > > @@ -38,10 +38,10 @@ _fill()
> > >  }
> > >  
> > >  _do_die_on_error=message_only
> > > -agsize=32
> > > +agsize=512
> > >  echo -n "Make $agsize megabyte filesystem on SCRATCH_DEV and mount... "
> > > -_scratch_mkfs_xfs -dsize=${agsize}m,agcount=1 2>&1 >/dev/null || _fail "mkfs failed"
> > > -bsize=`_scratch_mkfs_xfs -dsize=${agsize}m,agcount=1 2>&1 | _filter_mkfs 2>&1 \
> > > +_scratch_mkfs_xfs -dsize=${agsize}m,agcount=2 2>&1 >/dev/null || _fail "mkfs failed"
> > > +bsize=`_scratch_mkfs_xfs -dsize=${agsize}m,agcount=2 2>&1 | _filter_mkfs 2>&1 \
> > >  		| perl -ne 'if (/dbsize=(\d+)/) {print $1;}'`
> > >  onemeginblocks=`expr 1048576 / $bsize`
> > >  _scratch_mount
> > > @@ -51,7 +51,7 @@ echo "done"
> > >  # full allocation group -> partial; partial -> expand partial + new partial;
> > >  # partial -> expand partial; partial -> full
> > >  # cycle through 33m -> 67m -> 75m -> 96m
> > > -for size in 33 67 75 96
> > > +for size in 513 1027 1059 1536
> > 
> > Above comment need to be changed too.
> > 
> > >  do
> > >      grow_size=`expr $size \* $onemeginblocks`
> > >      _fill $SCRATCH_MNT/fill_$size
> > > diff --git a/tests/xfs/041.out b/tests/xfs/041.out
> > > index 0e675804..9e2a2c6d 100644
> > > --- a/tests/xfs/041.out
> > > +++ b/tests/xfs/041.out
> > > @@ -1,19 +1,19 @@
> > >  QA output created by 041
> > > -Make 32 megabyte filesystem on SCRATCH_DEV and mount... done
> > > +Make 512 megabyte filesystem on SCRATCH_DEV and mount... done
> > >  Fill filesystem... done
> > > -Grow filesystem to 33m... done
> > > +Grow filesystem to 513m... done
> > >  Flush filesystem... done
> > >  Check files... done
> > >  Fill filesystem... done
> > > -Grow filesystem to 67m... done
> > > +Grow filesystem to 1027m... done
> > >  Flush filesystem... done
> > >  Check files... done
> > >  Fill filesystem... done
> > > -Grow filesystem to 75m... done
> > > +Grow filesystem to 1059m... done
> > >  Flush filesystem... done
> > >  Check files... done
> > >  Fill filesystem... done
> > > -Grow filesystem to 96m... done
> > > +Grow filesystem to 1536m... done
> > >  Flush filesystem... done
> > >  Check files... done
> > >  Growfs tests passed.
> > > diff --git a/tests/xfs/042 b/tests/xfs/042
> > > index d62eb045..baa0f424 100755
> > > --- a/tests/xfs/042
> > > +++ b/tests/xfs/042
> > > @@ -52,7 +52,7 @@ _require_scratch
> > >  _do_die_on_error=message_only
> > >  
> > >  echo -n "Make a 48 megabyte filesystem on SCRATCH_DEV and mount... "
> > > -_scratch_mkfs_xfs -dsize=48m,agcount=3 2>&1 >/dev/null || _fail "mkfs failed"
> > > +_scratch_mkfs_xfs -dsize=512m,agcount=3 2>&1 >/dev/null || _fail "mkfs failed"
> > >  _scratch_mount
> > >  
> > >  echo "done"
> > > diff --git a/tests/xfs/049 b/tests/xfs/049
> > > index 69656a85..e04769bf 100755
> > > --- a/tests/xfs/049
> > > +++ b/tests/xfs/049
> > > @@ -57,7 +57,7 @@ mount -t ext2 $SCRATCH_DEV $SCRATCH_MNT >> $seqres.full 2>&1 \
> > >      || _fail "!!! failed to mount"
> > >  
> > >  _log "Create xfs fs in file on scratch"
> > > -${MKFS_XFS_PROG} -f -dfile,name=$SCRATCH_MNT/test.xfs,size=40m \
> > > +${MKFS_XFS_PROG} -f -dfile,name=$SCRATCH_MNT/test.xfs,size=512m \
> > >      >> $seqres.full 2>&1 \
> > >      || _fail "!!! failed to mkfs xfs"
> > >  
> > > diff --git a/tests/xfs/073 b/tests/xfs/073
> > > index c7616b9e..48c293e9 100755
> > > --- a/tests/xfs/073
> > > +++ b/tests/xfs/073
> > > @@ -110,7 +110,7 @@ _require_xfs_copy
> > >  _require_scratch
> > >  _require_loop
> > >  
> > > -_scratch_mkfs_xfs -dsize=41m,agcount=2 >>$seqres.full 2>&1
> > > +_scratch_mkfs_xfs -dsize=512m,agcount=2 >>$seqres.full 2>&1
> > >  _scratch_mount
> > >  
> > >  echo
> > > diff --git a/tests/xfs/076 b/tests/xfs/076
> > > index 8eef1367..b352cd04 100755
> > > --- a/tests/xfs/076
> > > +++ b/tests/xfs/076
> > > @@ -69,7 +69,7 @@ _require_xfs_sparse_inodes
> > >  # bitmap consuming all the free space in our small data device.
> > >  unset SCRATCH_RTDEV
> > >  
> > > -_scratch_mkfs "-d size=50m -m crc=1 -i sparse" | tee -a $seqres.full |
> > > +_scratch_mkfs "-d size=512m -m crc=1 -i sparse" | tee -a $seqres.full |
> > >  	_filter_mkfs > /dev/null 2> $tmp.mkfs
> > >  . $tmp.mkfs	# for isize
> > >  
> > > diff --git a/tests/xfs/078 b/tests/xfs/078
> > > index 1f475c96..9a24086e 100755
> > > --- a/tests/xfs/078
> > > +++ b/tests/xfs/078
> > > @@ -103,9 +103,9 @@ _grow_loop()
> > >  _grow_loop $((168024*4096)) 1376452608 4096 1
> > >  
> > >  # Some other blocksize cases...
> > > -_grow_loop $((168024*2048)) 1376452608 2048 1
> > > -_grow_loop $((168024*512)) 1376452608 512 1 16m
> > > -_grow_loop $((168024*1024)) 688230400 1024 1
> > > +_grow_loop $((168024*4096)) 1376452608 2048 1
> > > +_grow_loop $((168024*4096)) 1376452608 512 1 16m
> > > +_grow_loop $((168024*4096)) 688230400 1024 1
> > >  
> > >  # Other corner cases suggested by dgc
> > >  # also the following doesn't check if the filesystem is consistent.
> > > diff --git a/tests/xfs/078.out b/tests/xfs/078.out
> > > index cc3c47d1..fe324b07 100644
> > > --- a/tests/xfs/078.out
> > > +++ b/tests/xfs/078.out
> > > @@ -19,9 +19,9 @@ data blocks changed from 168024 to 336048
> > >  *** unmount
> > >  *** check
> > >  
> > > -=== GROWFS (from 344113152 to 1376452608, 2048 blocksize)
> > > +=== GROWFS (from 688226304 to 1376452608, 2048 blocksize)
> > >  
> > > -*** mkfs loop file (size=344113152)
> > > +*** mkfs loop file (size=688226304)
> > >  meta-data=DDEV isize=XXX agcount=N, agsize=XXX blks
> > >  data     = bsize=XXX blocks=XXX, imaxpct=PCT
> > >           = sunit=XXX swidth=XXX, unwritten=X
> > > @@ -32,14 +32,14 @@ realtime =RDEV extsz=XXX blocks=XXX, rtextents=XXX
> > >  wrote 2048/2048 bytes at offset 1376452608
> > >  *** mount loop filesystem
> > >  *** grow loop filesystem
> > > -xfs_growfs --BlockSize=2048 --Blocks=168024
> > > -data blocks changed from 168024 to 672096
> > > +xfs_growfs --BlockSize=2048 --Blocks=336048
> > > +data blocks changed from 336048 to 672096
> > >  *** unmount
> > >  *** check
> > >  
> > > -=== GROWFS (from 86028288 to 1376452608, 512 blocksize)
> > > +=== GROWFS (from 688226304 to 1376452608, 512 blocksize)
> > >  
> > > -*** mkfs loop file (size=86028288)
> > > +*** mkfs loop file (size=688226304)
> > >  meta-data=DDEV isize=XXX agcount=N, agsize=XXX blks
> > >  data     = bsize=XXX blocks=XXX, imaxpct=PCT
> > >           = sunit=XXX swidth=XXX, unwritten=X
> > > @@ -50,14 +50,14 @@ realtime =RDEV extsz=XXX blocks=XXX, rtextents=XXX
> > >  wrote 512/512 bytes at offset 1376452608
> > >  *** mount loop filesystem
> > >  *** grow loop filesystem
> > > -xfs_growfs --BlockSize=512 --Blocks=163840
> > > -data blocks changed from 163840 to 2688384
> > > +xfs_growfs --BlockSize=512 --Blocks=1344192
> > > +data blocks changed from 1344192 to 2688384
> > >  *** unmount
> > >  *** check
> > >  
> > > -=== GROWFS (from 172056576 to 688230400, 1024 blocksize)
> > > +=== GROWFS (from 688226304 to 688230400, 1024 blocksize)
> > >  
> > > -*** mkfs loop file (size=172056576)
> > > +*** mkfs loop file (size=688226304)
> > >  meta-data=DDEV isize=XXX agcount=N, agsize=XXX blks
> > >  data     = bsize=XXX blocks=XXX, imaxpct=PCT
> > >           = sunit=XXX swidth=XXX, unwritten=X
> > > @@ -68,8 +68,7 @@ realtime =RDEV extsz=XXX blocks=XXX, rtextents=XXX
> > >  wrote 1024/1024 bytes at offset 688230400
> > >  *** mount loop filesystem
> > >  *** grow loop filesystem
> > > -xfs_growfs --BlockSize=1024 --Blocks=168024
> > > -data blocks changed from 168024 to 672096
> > > +xfs_growfs --BlockSize=1024 --Blocks=672096
> > >  *** unmount
> > >  *** check
> > >  
> > > diff --git a/tests/xfs/104 b/tests/xfs/104
> > > index d16f46d8..e4876633 100755
> > > --- a/tests/xfs/104
> > > +++ b/tests/xfs/104
> > > @@ -53,14 +53,14 @@ _require_xfs_io_command "falloc"
> > >  _scratch_mkfs_xfs | tee -a $seqres.full | _filter_mkfs 2>$tmp.mkfs
> > >  . $tmp.mkfs	# extract blocksize and data size for scratch device
> > >  
> > > -endsize=`expr 550 \* 1048576`	# stop after growing this big
> > > -incsize=`expr  42 \* 1048576`	# grow in chunks of this size
> > > +endsize=`expr 1920 \* 1048576`	# stop after growing this big
> > > +incsize=`expr 179 \* 1048576`	# grow in chunks of this size
> > >  modsize=`expr   4 \* $incsize`	# pause after this many increments
> > >  
> > >  [ `expr $endsize / $dbsize` -lt $dblocks ] || _notrun "Scratch device too small"
> > >  
> > >  nags=4
> > > -size=`expr 125 \* 1048576`	# 120 megabytes initially
> > > +size=`expr 512 \* 1048576`	# 512 megabytes initially
> > >  sizeb=`expr $size / $dbsize`	# in data blocks
> > >  echo "*** creating scratch filesystem"
> > >  logblks=$(_scratch_find_xfs_min_logblocks -dsize=${size} -dagcount=${nags})
> > > diff --git a/tests/xfs/104.out b/tests/xfs/104.out
> > > index de6c7f27..c3fc8829 100644
> > > --- a/tests/xfs/104.out
> > > +++ b/tests/xfs/104.out
> > > @@ -95,33 +95,3 @@ log      =LDEV bsize=XXX blocks=XXX
> > >  realtime =RDEV extsz=XXX blocks=XXX, rtextents=XXX
> > >  AGCOUNT=14
> > >  
> > > -*** stressing filesystem
> > > -*** growing filesystem
> > > -meta-data=DDEV isize=XXX agcount=N, agsize=XXX blks
> > > -data     = bsize=XXX blocks=XXX, imaxpct=PCT
> > > -         = sunit=XXX swidth=XXX, unwritten=X
> > > -naming   =VERN bsize=XXX
> > > -log      =LDEV bsize=XXX blocks=XXX
> > > -realtime =RDEV extsz=XXX blocks=XXX, rtextents=XXX
> > > -AGCOUNT=15
> > > -
> > > -*** stressing filesystem
> > > -*** growing filesystem
> > > -meta-data=DDEV isize=XXX agcount=N, agsize=XXX blks
> > > -data     = bsize=XXX blocks=XXX, imaxpct=PCT
> > > -         = sunit=XXX swidth=XXX, unwritten=X
> > > -naming   =VERN bsize=XXX
> > > -log      =LDEV bsize=XXX blocks=XXX
> > > -realtime =RDEV extsz=XXX blocks=XXX, rtextents=XXX
> > > -AGCOUNT=17
> > > -
> > > -*** stressing filesystem
> > > -*** growing filesystem
> > > -meta-data=DDEV isize=XXX agcount=N, agsize=XXX blks
> > > -data     = bsize=XXX blocks=XXX, imaxpct=PCT
> > > -         = sunit=XXX swidth=XXX, unwritten=X
> > > -naming   =VERN bsize=XXX
> > > -log      =LDEV bsize=XXX blocks=XXX
> > > -realtime =RDEV extsz=XXX blocks=XXX, rtextents=XXX
> > > -AGCOUNT=18
> > > -
> > > diff --git a/tests/xfs/107 b/tests/xfs/107
> > > index 1ea9c492..e1f9b537 100755
> > > --- a/tests/xfs/107
> > > +++ b/tests/xfs/107
> > > @@ -23,9 +23,9 @@ _require_scratch
> > >  _require_xfs_io_command allocsp		# detect presence of ALLOCSP ioctl
> > >  _require_test_program allocstale
> > >  
> > > -# Create a 256MB filesystem to avoid running into mkfs problems with too-small
> > > +# Create a 512MB filesystem to avoid running into mkfs problems with too-small
> > >  # filesystems.
> > > -size_mb=256
> > > +size_mb=512
> > >  
> > >  # Write a known pattern to the disk so that we can detect stale disk blocks
> > >  # being mapped into the file.  In the test author's experience, the bug will
> > > diff --git a/tests/xfs/118 b/tests/xfs/118
> > > index 03755b28..6fc3cdaa 100755
> > > --- a/tests/xfs/118
> > > +++ b/tests/xfs/118
> > > @@ -27,8 +27,8 @@ _require_scratch
> > >  _require_command "$XFS_FSR_PROG" "xfs_fsr"
> > >  _require_xfs_io_command "falloc"
> > >  
> > > -# 50M
> > > -_scratch_mkfs_sized $((50 * 1024 * 1024)) >> $seqres.full 2>&1
> > > +# 512M
> > > +_scratch_mkfs_sized $((512 * 1024 * 1024)) >> $seqres.full 2>&1
> > >  _scratch_mount
> > >  
> > >  echo "Silence is golden"
> > > diff --git a/tests/xfs/148 b/tests/xfs/148
> > > index 5d0a0bf4..f64d10df 100755
> > > --- a/tests/xfs/148
> > > +++ b/tests/xfs/148
> > > @@ -44,7 +44,7 @@ rm -f $imgfile $imgfile.old
> > >  # We need to use 512 byte inodes to ensure the attr forks remain in short form
> > >  # even when security xattrs are present so we are always doing name matches on
> > >  # lookup and not name hash compares as leaf/node forms will do.
> > > -$XFS_IO_PROG -f -c 'truncate 40m' $imgfile
> > > +$XFS_IO_PROG -f -c 'truncate 512m' $imgfile
> > >  loopdev=$(_create_loop_device $imgfile)
> > >  MKFS_OPTIONS="-m crc=0 -i size=512" _mkfs_dev $loopdev >> $seqres.full
> > >  
> > > diff --git a/tests/xfs/149 b/tests/xfs/149
> > > index 503eff65..49762556 100755
> > > --- a/tests/xfs/149
> > > +++ b/tests/xfs/149
> > > @@ -42,10 +42,10 @@ _require_loop
> > >  mkdir -p $mntdir || _fail "!!! failed to create temp mount dir"
> > >  
> > >  echo "=== mkfs.xfs ==="
> > > -$MKFS_XFS_PROG -d file,name=$loopfile,size=16m -f >/dev/null 2>&1
> > > +$MKFS_XFS_PROG -d file,name=$loopfile,size=512m -f >> $seqres.full 2>&1
> > >  
> > >  echo "=== truncate ==="
> > > -$XFS_IO_PROG -fc "truncate 256m" $loopfile
> > > +$XFS_IO_PROG -fc "truncate 3072m" $loopfile
> > >  
> > >  echo "=== create loop device ==="
> > >  loop_dev=$(_create_loop_device $loopfile)
> > > @@ -69,10 +69,10 @@ echo "=== mount ==="
> > >  $MOUNT_PROG $loop_dev $mntdir || _fail "!!! failed to loopback mount"
> > >  
> > >  echo "=== xfs_growfs - check device node ==="
> > > -$XFS_GROWFS_PROG -D 8192 $loop_dev > /dev/null
> > > +$XFS_GROWFS_PROG -D 262144 $loop_dev > /dev/null
> > >  
> > >  echo "=== xfs_growfs - check device symlink ==="
> > > -$XFS_GROWFS_PROG -D 12288 $loop_symlink > /dev/null
> > > +$XFS_GROWFS_PROG -D 393216 $loop_symlink > /dev/null
> > >  
> > >  echo "=== unmount ==="
> > >  $UMOUNT_PROG $mntdir || _fail "!!! failed to unmount"
> > > @@ -81,10 +81,10 @@ echo "=== mount device symlink ==="
> > >  $MOUNT_PROG $loop_symlink $mntdir || _fail "!!! failed to loopback mount"
> > >  
> > >  echo "=== xfs_growfs - check device symlink ==="
> > > -$XFS_GROWFS_PROG -D 16384 $loop_symlink > /dev/null
> > > +$XFS_GROWFS_PROG -D 524288 $loop_symlink > /dev/null
> > >  
> > >  echo "=== xfs_growfs - check device node ==="
> > > -$XFS_GROWFS_PROG -D 20480 $loop_dev > /dev/null
> > > +$XFS_GROWFS_PROG -D 655360 $loop_dev > /dev/null
> > >  
> > >  # success, all done
> > >  status=0
> > > diff --git a/tests/xfs/168 b/tests/xfs/168
> > > index ffcd0df8..f3d5193b 100755
> > > --- a/tests/xfs/168
> > > +++ b/tests/xfs/168
> > > @@ -51,7 +51,7 @@ _require_xfs_io_command "falloc"
> > >  _scratch_mkfs_xfs | tee -a $seqres.full | _filter_mkfs 2>$tmp.mkfs >/dev/null
> > >  . $tmp.mkfs	# extract blocksize and data size for scratch device
> > >  
> > > -endsize=`expr 125 \* 1048576`	# stop after shrinking this big
> > > +endsize=`expr 300 \* 1048576`	# stop after shrinking this big
> > >  [ `expr $endsize / $dbsize` -lt $dblocks ] || _notrun "Scratch device too small"
> > >  
> > >  nags=2
> > > diff --git a/tests/xfs/170 b/tests/xfs/170
> > > index b9ead341..f437fff3 100755
> > > --- a/tests/xfs/170
> > > +++ b/tests/xfs/170
> > > @@ -31,11 +31,11 @@ _set_stream_timeout_centisecs 3000
> > >  # the log for small filesystems, so we make sure there's one more AG than
> > >  # filestreams to encourage the allocator to skip whichever AG owns the log.
> > >  #
> > > -# Exercise 9x 22MB AGs, 4 filestreams, 8 files per stream, and 3MB per file.
> > > -_test_streams 9 22 4 8 3 0 0
> > > -_test_streams 9 22 4 8 3 1 0
> > > -_test_streams 9 22 4 8 3 0 1
> > > -_test_streams 9 22 4 8 3 1 1
> > > +# Exercise 9x 68MB AGs, 4 filestreams, 8 files per stream, and 9MB per file.
> > > +_test_streams 9 68 4 8 9 0 0
> > > +_test_streams 9 68 4 8 9 1 0
> > > +_test_streams 9 68 4 8 9 0 1
> > > +_test_streams 9 68 4 8 9 1 1
> > >  
> > >  status=0
> > >  exit
> > > diff --git a/tests/xfs/170.out b/tests/xfs/170.out
> > > index 16dcb795..513c230d 100644
> > > --- a/tests/xfs/170.out
> > > +++ b/tests/xfs/170.out
> > > @@ -1,20 +1,20 @@
> > >  QA output created by 170
> > > -# testing 9 22 4 8 3 0 0 ....
> > > +# testing 9 68 4 8 9 0 0 ....
> > >  # streaming
> > >  # sync AGs...
> > >  # checking stream AGs...
> > >  + passed, streams are in seperate AGs
> > > -# testing 9 22 4 8 3 1 0 ....
> > > +# testing 9 68 4 8 9 1 0 ....
> > >  # streaming
> > >  # sync AGs...
> > >  # checking stream AGs...
> > >  + passed, streams are in seperate AGs
> > > -# testing 9 22 4 8 3 0 1 ....
> > > +# testing 9 68 4 8 9 0 1 ....
> > >  # streaming
> > >  # sync AGs...
> > >  # checking stream AGs...
> > >  + passed, streams are in seperate AGs
> > > -# testing 9 22 4 8 3 1 1 ....
> > > +# testing 9 68 4 8 9 1 1 ....
> > >  # streaming
> > >  # sync AGs...
> > >  # checking stream AGs...
> > > diff --git a/tests/xfs/174 b/tests/xfs/174
> > > index 1245a217..3b04cd35 100755
> > > --- a/tests/xfs/174
> > > +++ b/tests/xfs/174
> > > @@ -24,8 +24,8 @@ _check_filestreams_support || _notrun "filestreams not available"
> > >  # test number of streams greater than AGs. Expected to fail.
> > >  _set_stream_timeout_centisecs 6000
> > >  
> > > -_test_streams 8 32 65 3 1 1 0 fail
> > > -_test_streams 8 32 65 3 1 0 1 fail
> > > +_test_streams 8 68 72 3 1 1 0 fail
> > > +_test_streams 8 68 72 3 1 0 1 fail
> > >  
> > >  status=0
> > >  exit
> > > diff --git a/tests/xfs/174.out b/tests/xfs/174.out
> > > index 5df581fe..d9fea2f7 100644
> > > --- a/tests/xfs/174.out
> > > +++ b/tests/xfs/174.out
> > > @@ -1,10 +1,10 @@
> > >  QA output created by 174
> > > -# testing 8 32 65 3 1 1 0 fail ....
> > > +# testing 8 68 72 3 1 1 0 fail ....
> > >  # streaming
> > >  # sync AGs...
> > >  # checking stream AGs...
> > >  + expected failure, matching AGs
> > > -# testing 8 32 65 3 1 0 1 fail ....
> > > +# testing 8 68 72 3 1 0 1 fail ....
> > >  # streaming
> > >  # sync AGs...
> > >  # checking stream AGs...
> > > diff --git a/tests/xfs/176 b/tests/xfs/176
> > > index ba4aae59..8d60cd36 100755
> > > --- a/tests/xfs/176
> > > +++ b/tests/xfs/176
> > > @@ -23,7 +23,7 @@ _require_scratch_xfs_shrink
> > >  _require_xfs_io_command "falloc"
> > >  _require_xfs_io_command "fpunch"
> > >  
> > > -_scratch_mkfs "-d size=50m -m crc=1 -i sparse" |
> > > +_scratch_mkfs "-d size=512m -m crc=1 -i sparse" |
> > >  	_filter_mkfs > /dev/null 2> $tmp.mkfs
> > >  . $tmp.mkfs	# for isize
> > >  cat $tmp.mkfs >> $seqres.full
> > > diff --git a/tests/xfs/205 b/tests/xfs/205
> > > index 104f1f45..f1a8200a 100755
> > > --- a/tests/xfs/205
> > > +++ b/tests/xfs/205
> > > @@ -23,7 +23,7 @@ _require_scratch_nocheck
> > >  unset SCRATCH_RTDEV
> > >  
> > >  fsblksz=1024
> > > -_scratch_mkfs_xfs -d size=$((32768*fsblksz)) -b size=$fsblksz >> $seqres.full 2>&1
> > > +_scratch_mkfs_xfs -d size=$((524288*fsblksz)) -b size=$fsblksz >> $seqres.full 2>&1
> > >  _scratch_mount
> > >  
> > >  # fix the reserve block pool to a known size so that the enospc calculations
> > > diff --git a/tests/xfs/227 b/tests/xfs/227
> > > index cd927dc4..5f5f519e 100755
> > > --- a/tests/xfs/227
> > > +++ b/tests/xfs/227
> > > @@ -122,7 +122,7 @@ create_target_attr_last()
> > >  }
> > >  
> > >  # use a small filesystem so we can control freespace easily
> > > -_scratch_mkfs_sized $((50 * 1024 * 1024)) >> $seqres.full 2>&1
> > > +_scratch_mkfs_sized $((512 * 1024 * 1024)) >> $seqres.full 2>&1
> > >  _scratch_mount
> > >  fragment_freespace
> > >  
> > > diff --git a/tests/xfs/233 b/tests/xfs/233
> > > index 2b2b8666..573b7a17 100755
> > > --- a/tests/xfs/233
> > > +++ b/tests/xfs/233
> > > @@ -18,7 +18,7 @@ _require_xfs_scratch_rmapbt
> > >  _require_no_large_scratch_dev
> > >  
> > >  echo "Format and mount"
> > > -_scratch_mkfs_sized $((2 * 4096 * 4096)) > $seqres.full 2>&1
> > > +_scratch_mkfs_sized $((32 * 4096 * 4096)) > $seqres.full 2>&1
> > >  _scratch_mount >> $seqres.full 2>&1
> > >  
> > >  testdir=$SCRATCH_MNT/test-$seq
> > > diff --git a/tests/xfs/279 b/tests/xfs/279
> > > index 835d187f..262f30b7 100755
> > > --- a/tests/xfs/279
> > > +++ b/tests/xfs/279
> > > @@ -55,7 +55,7 @@ _check_mkfs()
> > >  (
> > >  echo "==================="
> > >  echo "4k physical 512b logical aligned"
> > > -SCSI_DEBUG_DEV=`_get_scsi_debug_dev 4096 512 0 128`
> > > +SCSI_DEBUG_DEV=`_get_scsi_debug_dev 4096 512 0 512`
> > >  test -b "$SCSI_DEBUG_DEV" || _notrun "Could not get scsi_debug device"
> > >  # sector size should default to 4k
> > >  _check_mkfs $SCSI_DEBUG_DEV
> > > @@ -68,7 +68,7 @@ _put_scsi_debug_dev
> > >  (
> > >  echo "==================="
> > >  echo "4k physical 512b logical unaligned"
> > > -SCSI_DEBUG_DEV=`_get_scsi_debug_dev 4096 512 1 128`
> > > +SCSI_DEBUG_DEV=`_get_scsi_debug_dev 4096 512 1 512`
> > >  test -b "$SCSI_DEBUG_DEV" || _notrun "Could not get scsi_debug device"
> > >  # should fail on misalignment
> > >  _check_mkfs $SCSI_DEBUG_DEV
> > > @@ -85,7 +85,7 @@ _put_scsi_debug_dev
> > >  (
> > >  echo "==================="
> > >  echo "hard 4k physical / 4k logical"
> > > -SCSI_DEBUG_DEV=`_get_scsi_debug_dev 4096 4096 0 128`
> > > +SCSI_DEBUG_DEV=`_get_scsi_debug_dev 4096 4096 0 512`
> > >  test -b "$SCSI_DEBUG_DEV" || _notrun "Could not get scsi_debug device"
> > >  # block size smaller than sector size should fail 
> > >  _check_mkfs -b size=2048 $SCSI_DEBUG_DEV
> > > diff --git a/tests/xfs/289 b/tests/xfs/289
> > > index c722deff..dc453b55 100755
> > > --- a/tests/xfs/289
> > > +++ b/tests/xfs/289
> > > @@ -39,10 +39,10 @@ tmpbind=$TEST_DIR/tmpbind.$$
> > >  mkdir -p $tmpdir || _fail "!!! failed to create temp mount dir"
> > >  
> > >  echo "=== mkfs.xfs ==="
> > > -$MKFS_XFS_PROG -d file,name=$tmpfile,size=16m -f >/dev/null 2>&1
> > > +$MKFS_XFS_PROG -d file,name=$tmpfile,size=512m -f >/dev/null 2>&1
> > >  
> > >  echo "=== truncate ==="
> > > -$XFS_IO_PROG -fc "truncate 256m" $tmpfile
> > > +$XFS_IO_PROG -fc "truncate 5g" $tmpfile
> > >  
> > >  echo "=== xfs_growfs - unmounted, command should be rejected ==="
> > >  $XFS_GROWFS_PROG $tmpdir 2>&1 |  _filter_test_dir
> > > @@ -61,34 +61,34 @@ echo "=== mount ==="
> > >  $MOUNT_PROG -o loop $tmpfile $tmpdir || _fail "!!! failed to loopback mount"
> > >  
> > >  echo "=== xfs_growfs - mounted - check absolute path ==="
> > > -$XFS_GROWFS_PROG -D 8192 $tmpdir | _filter_test_dir > /dev/null
> > > +$XFS_GROWFS_PROG -D 262114 $tmpdir | _filter_test_dir > /dev/null
> > >  
> > >  echo "=== xfs_growfs - check relative path ==="
> > > -$XFS_GROWFS_PROG -D 12288 ./tmpdir > /dev/null
> > > +$XFS_GROWFS_PROG -D 393216 ./tmpdir > /dev/null
> > >  
> > >  echo "=== xfs_growfs - no path ==="
> > > -$XFS_GROWFS_PROG -D 16384 tmpdir > /dev/null
> > > +$XFS_GROWFS_PROG -D 524288 tmpdir > /dev/null
> > >  
> > >  echo "=== xfs_growfs - symbolic link ==="
> > >  ln -s $tmpdir $tmpsymlink
> > > -$XFS_GROWFS_PROG -D 20480 $tmpsymlink | _filter_test_dir > /dev/null
> > > +$XFS_GROWFS_PROG -D 655360 $tmpsymlink | _filter_test_dir > /dev/null
> > >  
> > >  echo "=== xfs_growfs - symbolic link using relative path ==="
> > > -$XFS_GROWFS_PROG -D 24576 ./tmpsymlink.$$ > /dev/null
> > > +$XFS_GROWFS_PROG -D 786432 ./tmpsymlink.$$ > /dev/null
> > >  
> > >  echo "=== xfs_growfs - symbolic link using no path ==="
> > > -$XFS_GROWFS_PROG -D 28672 tmpsymlink.$$ > /dev/null
> > > +$XFS_GROWFS_PROG -D 917504 tmpsymlink.$$ > /dev/null
> > >  
> > >  echo "=== xfs_growfs - bind mount ==="
> > >  mkdir $tmpbind
> > >  $MOUNT_PROG -o bind $tmpdir $tmpbind
> > > -$XFS_GROWFS_PROG -D 32768 $tmpbind | _filter_test_dir > /dev/null
> > > +$XFS_GROWFS_PROG -D 1048576 $tmpbind | _filter_test_dir > /dev/null
> > >  
> > >  echo "=== xfs_growfs - bind mount - relative path ==="
> > > -$XFS_GROWFS_PROG -D 36864 ./tmpbind.$$ > /dev/null
> > > +$XFS_GROWFS_PROG -D 1179648 ./tmpbind.$$ > /dev/null
> > >  
> > >  echo "=== xfs_growfs - bind mount - no path ==="
> > > -$XFS_GROWFS_PROG -D 40960 tmpbind.$$ > /dev/null
> > > +$XFS_GROWFS_PROG -D 1310720 tmpbind.$$ > /dev/null
> > >  
> > >  echo "=== xfs_growfs - plain file - should be rejected ==="
> > >  $XFS_GROWFS_PROG $tmpfile 2>&1 | _filter_test_dir
> > > diff --git a/tests/xfs/291 b/tests/xfs/291
> > > index a2425e47..560e8891 100755
> > > --- a/tests/xfs/291
> > > +++ b/tests/xfs/291
> > > @@ -16,8 +16,8 @@ _supported_fs xfs
> > >  
> > >  # real QA test starts here
> > >  _require_scratch
> > > -logblks=$(_scratch_find_xfs_min_logblocks -n size=16k -d size=133m)
> > > -_scratch_mkfs_xfs -n size=16k -l size=${logblks}b -d size=133m >> $seqres.full 2>&1
> > > +logblks=$(_scratch_find_xfs_min_logblocks -n size=16k -d size=512m)
> > > +_scratch_mkfs_xfs -n size=16k -l size=${logblks}b -d size=512m >> $seqres.full 2>&1
> > >  _scratch_mount
> > >  
> > >  # First we cause very badly fragmented freespace, then
> > > diff --git a/tests/xfs/306 b/tests/xfs/306
> > > index b57bf4c0..b52285da 100755
> > > --- a/tests/xfs/306
> > > +++ b/tests/xfs/306
> > > @@ -30,7 +30,7 @@ unset SCRATCH_RTDEV
> > >  
> > >  # Create a small fs with a large directory block size. We want to fill up the fs
> > >  # quickly and then create multi-fsb dirblocks over fragmented free space.
> > > -_scratch_mkfs_xfs -d size=20m -n size=64k >> $seqres.full 2>&1
> > > +_scratch_mkfs_xfs -d size=512m -n size=64k >> $seqres.full 2>&1
> > >  _scratch_mount
> > >  
> > >  # Fill a source directory with many largish-named files. 1k uuid-named entries
> > > diff --git a/tests/xfs/514 b/tests/xfs/514
> > > index cf5588f2..1243d293 100755
> > > --- a/tests/xfs/514
> > > +++ b/tests/xfs/514
> > > @@ -37,7 +37,7 @@ esac
> > >  _require_command "$(type -P $CAT)" $CAT
> > >  
> > >  file=$TEST_DIR/xx.$seq
> > > -truncate -s 128m $file
> > > +truncate -s 512m $file
> > >  $MKFS_XFS_PROG $file >> /dev/null
> > >  
> > >  for COMMAND in `$XFS_DB_PROG -x -c help $file | awk '{print $1}' | grep -v "^Use"`; do
> > > diff --git a/tests/xfs/520 b/tests/xfs/520
> > > index 2fceb07c..d9e252bd 100755
> > > --- a/tests/xfs/520
> > > +++ b/tests/xfs/520
> > > @@ -60,7 +60,7 @@ force_crafted_metadata() {
> > >  }
> > >  
> > >  bigval=100000000
> > > -fsdsopt="-d agcount=1,size=64m"
> > > +fsdsopt="-d agcount=1,size=512m"
> > >  
> > >  force_crafted_metadata freeblks 0 "agf 0"
> > >  force_crafted_metadata longest $bigval "agf 0"
> > > -- 
> > > 2.31.1
> > > 
> > 
> 


^ permalink raw reply	[flat|nested] 20+ messages in thread

* Re: [PATCH v3 4/4] xfs/144: remove testing root dir inode in AG 1
  2022-08-30  7:49   ` Zorro Lang
  2022-08-30 14:59     ` Darrick J. Wong
@ 2022-08-30 23:42     ` Murphy Zhou
  1 sibling, 0 replies; 20+ messages in thread
From: Murphy Zhou @ 2022-08-30 23:42 UTC (permalink / raw)
  To: Zorro Lang; +Cc: fstests, linux-xfs

On Tue, Aug 30, 2022 at 3:49 PM Zorro Lang <zlang@redhat.com> wrote:
>
> On Tue, Aug 30, 2022 at 12:44:33PM +0800, Murphy Zhou wrote:
> > Since this xfsprogs commit
> >   1b580a773 mkfs: don't let internal logs bump the root dir inode chunk to AG 1
> > this operation is not allowed.
> >
> > Signed-off-by: Murphy Zhou <jencce.kernel@gmail.com>
> > ---
> >  tests/xfs/144 | 10 +---------
> >  1 file changed, 1 insertion(+), 9 deletions(-)
> >
> > diff --git a/tests/xfs/144 b/tests/xfs/144
> > index 706aff61..3f80d0ee 100755
> > --- a/tests/xfs/144
> > +++ b/tests/xfs/144
> > @@ -17,9 +17,6 @@ _begin_fstest auto mkfs
> >  _supported_fs xfs
> >  _require_test
> >
> > -# The last testcase creates a (sparse) fs image with a 2GB log, so we need
> > -# 3GB to avoid failing the mkfs due to ENOSPC.
> > -_require_fs_space $TEST_DIR $((3 * 1048576))
> >  echo Silence is golden
> >
> >  testfile=$TEST_DIR/a
> > @@ -36,7 +33,7 @@ test_format() {
> >  }
> >
> >  # First we try various small filesystems and stripe sizes.
> > -for M in `seq 298 302` `seq 490 520`; do
> > +for M in `seq 1024 1030` ; do
>
> Can `seq 1024 1030` replace `seq 298 302` `seq 490 520`? I don't know how
> Darrick choose these numbers, better to ask the original authoer of this
> case. Others looks reasonable for me.

Oh, they are needed for fs size reason and log size reason during my test.

Forgot to move this part of patch to the fs size one.
>
> Thanks,
> Zorro
>
> >       for S in `seq 32 4 64`; do
> >               test_format "M=$M S=$S" -dsu=${S}k,sw=1,size=${M}m -N
> >       done
> > @@ -45,11 +42,6 @@ done
> >  # log end rounded beyond EOAG due to stripe unit
> >  test_format "log end beyond eoag" -d agcount=3200,size=6366g -d su=256k,sw=4 -N
> >
> > -# Log so large it pushes the root dir into AG 1.  We can't use -N for the mkfs
> > -# because this check only occurs after the root directory has been allocated,
> > -# which mkfs -N doesn't do.
> > -test_format "log pushes rootdir into AG 1" -d agcount=3200,size=6366g -lagnum=0
> > -
> >  # success, all done
> >  status=0
> >  exit
> > --
> > 2.31.1
> >
>

^ permalink raw reply	[flat|nested] 20+ messages in thread

* Re: [PATCH v3 4/4] xfs/144: remove testing root dir inode in AG 1
  2022-08-30 14:59     ` Darrick J. Wong
@ 2022-08-30 23:45       ` Murphy Zhou
  0 siblings, 0 replies; 20+ messages in thread
From: Murphy Zhou @ 2022-08-30 23:45 UTC (permalink / raw)
  To: Darrick J. Wong; +Cc: Zorro Lang, fstests, linux-xfs

On Tue, Aug 30, 2022 at 10:59 PM Darrick J. Wong <djwong@kernel.org> wrote:
>
> On Tue, Aug 30, 2022 at 03:49:36PM +0800, Zorro Lang wrote:
> > On Tue, Aug 30, 2022 at 12:44:33PM +0800, Murphy Zhou wrote:
> > > Since this xfsprogs commit
> > >   1b580a773 mkfs: don't let internal logs bump the root dir inode chunk to AG 1
> > > this operation is not allowed.
> > >
> > > Signed-off-by: Murphy Zhou <jencce.kernel@gmail.com>
> > > ---
> > >  tests/xfs/144 | 10 +---------
> > >  1 file changed, 1 insertion(+), 9 deletions(-)
> > >
> > > diff --git a/tests/xfs/144 b/tests/xfs/144
> > > index 706aff61..3f80d0ee 100755
> > > --- a/tests/xfs/144
> > > +++ b/tests/xfs/144
> > > @@ -17,9 +17,6 @@ _begin_fstest auto mkfs
> > >  _supported_fs xfs
> > >  _require_test
> > >
> > > -# The last testcase creates a (sparse) fs image with a 2GB log, so we need
> > > -# 3GB to avoid failing the mkfs due to ENOSPC.
> > > -_require_fs_space $TEST_DIR $((3 * 1048576))
> > >  echo Silence is golden
> > >
> > >  testfile=$TEST_DIR/a
> > > @@ -36,7 +33,7 @@ test_format() {
> > >  }
> > >
> > >  # First we try various small filesystems and stripe sizes.
> > > -for M in `seq 298 302` `seq 490 520`; do
> > > +for M in `seq 1024 1030` ; do
> >
> > Can `seq 1024 1030` replace `seq 298 302` `seq 490 520`? I don't know how
> > Darrick choose these numbers, better to ask the original authoer of this
> > case. Others looks reasonable for me.
>
> Those sequences were a result of Eric prying broken edge-cases out of
> the original patch series, so I wired them up in the test.
>
> > Thanks,
> > Zorro
> >
> > >     for S in `seq 32 4 64`; do
> > >             test_format "M=$M S=$S" -dsu=${S}k,sw=1,size=${M}m -N
> > >     done
> > > @@ -45,11 +42,6 @@ done
> > >  # log end rounded beyond EOAG due to stripe unit
> > >  test_format "log end beyond eoag" -d agcount=3200,size=6366g -d su=256k,sw=4 -N
> > >
> > > -# Log so large it pushes the root dir into AG 1.  We can't use -N for the mkfs
> > > -# because this check only occurs after the root directory has been allocated,
> > > -# which mkfs -N doesn't do.
> > > -test_format "log pushes rootdir into AG 1" -d agcount=3200,size=6366g -lagnum=0
>
> Also, why remove this bit?  Surely we ought to keep it just in case
> someone accidentally breaks the mkfs code again?

Because of this:
  1b580a773 mkfs: don't let internal logs bump the root dir inode chunk to AG 1
mkfs will fail here.

How can we achieve that? Add an expected result for _test_format?

THanks,
>
> --D
>
> > >  # success, all done
> > >  status=0
> > >  exit
> > > --
> > > 2.31.1
> > >
> >

^ permalink raw reply	[flat|nested] 20+ messages in thread

* Re: [PATCH v3 3/4] tests/xfs: remove single-AG options
  2022-08-30 13:42   ` Zorro Lang
@ 2022-08-31  0:02     ` Murphy Zhou
  0 siblings, 0 replies; 20+ messages in thread
From: Murphy Zhou @ 2022-08-31  0:02 UTC (permalink / raw)
  To: Zorro Lang; +Cc: fstests, linux-xfs

On Tue, Aug 30, 2022 at 9:43 PM Zorro Lang <zlang@redhat.com> wrote:
>
> On Tue, Aug 30, 2022 at 12:44:32PM +0800, Murphy Zhou wrote:
> > Since this xfsprogs commit:
> >       6e0ed3d19c54 mkfs: stop allowing tiny filesystems
> > Single-AG xfs is not allowed.
> >
> > Remove agcount=1 from mkfs options and xfs/202 entirely.
> >
> > Signed-off-by: Murphy Zhou <jencce.kernel@gmail.com>
> > ---
>
> Looks like all single AG xfs tests are invalid now. As this patch would like to
> remove xfs specific cases or change its original format, better to let xfs list
> review, to make sure they are informed at least.
>
> BTW I remember xfs/041 uses "agcount=1" too, don't we need to change it with
> this patch together?

I changed to agcount=2 with the fs size change patch.

>
> Thanks,
> Zorro
>
> >  tests/xfs/179     |  2 +-
> >  tests/xfs/202     | 40 ----------------------------------------
> >  tests/xfs/202.out | 29 -----------------------------
> >  tests/xfs/520     |  2 +-
> >  4 files changed, 2 insertions(+), 71 deletions(-)
> >  delete mode 100755 tests/xfs/202
> >  delete mode 100644 tests/xfs/202.out
> >
> > diff --git a/tests/xfs/179 b/tests/xfs/179
> > index ec0cb7e5..f0169717 100755
> > --- a/tests/xfs/179
> > +++ b/tests/xfs/179
> > @@ -22,7 +22,7 @@ _require_cp_reflink
> >  _require_test_program "punch-alternating"
> >
> >  echo "Format and mount"
> > -_scratch_mkfs -d agcount=1 > $seqres.full 2>&1
> > +_scratch_mkfs > $seqres.full 2>&1
> >  _scratch_mount >> $seqres.full 2>&1
> >
> >  testdir=$SCRATCH_MNT/test-$seq
> > diff --git a/tests/xfs/202 b/tests/xfs/202
> > deleted file mode 100755
> > index 5075d3a1..00000000
> > --- a/tests/xfs/202
> > +++ /dev/null
> > @@ -1,40 +0,0 @@
> > -#! /bin/bash
> > -# SPDX-License-Identifier: GPL-2.0
> > -# Copyright (c) 2009 Christoph Hellwig.
> > -#
> > -# FS QA Test No. 202
> > -#
> > -# Test out the xfs_repair -o force_geometry option on single-AG filesystems.
> > -#
> > -. ./common/preamble
> > -_begin_fstest repair auto quick
> > -
> > -# Import common functions.
> > -. ./common/filter
> > -. ./common/repair
> > -
> > -# real QA test starts here
> > -_supported_fs xfs
> > -
> > -# single AG will cause default xfs_repair to fail. This test is actually
> > -# testing the special corner case option needed to repair a single AG fs.
> > -_require_scratch_nocheck
> > -
> > -#
> > -# The AG size is limited to 1TB (or even less with historic xfsprogs),
> > -# so chose a small enough filesystem to make sure we can actually create
> > -# a single AG filesystem.
> > -#
> > -echo "== Creating single-AG filesystem =="
> > -_scratch_mkfs_xfs -d agcount=1 -d size=$((1024*1024*1024)) >/dev/null 2>&1 \
> > - || _fail "!!! failed to make filesystem with single AG"
> > -
> > -echo "== Trying to repair it (should fail) =="
> > -_scratch_xfs_repair
> > -
> > -echo "== Trying to repair it with -o force_geometry =="
> > -_scratch_xfs_repair -o force_geometry 2>&1 | _filter_repair
> > -
> > -# success, all done
> > -echo "*** done"
> > -status=0
> > diff --git a/tests/xfs/202.out b/tests/xfs/202.out
> > deleted file mode 100644
> > index c2c5c881..00000000
> > --- a/tests/xfs/202.out
> > +++ /dev/null
> > @@ -1,29 +0,0 @@
> > -QA output created by 202
> > -== Creating single-AG filesystem ==
> > -== Trying to repair it (should fail) ==
> > -Phase 1 - find and verify superblock...
> > -Only one AG detected - cannot validate filesystem geometry.
> > -Use the -o force_geometry option to proceed.
> > -== Trying to repair it with -o force_geometry ==
> > -Phase 1 - find and verify superblock...
> > -Phase 2 - using <TYPEOF> log
> > -        - zero log...
> > -        - scan filesystem freespace and inode maps...
> > -        - found root inode chunk
> > -Phase 3 - for each AG...
> > -        - scan and clear agi unlinked lists...
> > -        - process known inodes and perform inode discovery...
> > -        - process newly discovered inodes...
> > -Phase 4 - check for duplicate blocks...
> > -        - setting up duplicate extent list...
> > -        - check for inodes claiming duplicate blocks...
> > -Phase 5 - rebuild AG headers and trees...
> > -        - reset superblock...
> > -Phase 6 - check inode connectivity...
> > -        - resetting contents of realtime bitmap and summary inodes
> > -        - traversing filesystem ...
> > -        - traversal finished ...
> > -        - moving disconnected inodes to lost+found ...
> > -Phase 7 - verify and correct link counts...
> > -done
> > -*** done
> > diff --git a/tests/xfs/520 b/tests/xfs/520
> > index d9e252bd..de70db60 100755
> > --- a/tests/xfs/520
> > +++ b/tests/xfs/520
> > @@ -60,7 +60,7 @@ force_crafted_metadata() {
> >  }
> >
> >  bigval=100000000
> > -fsdsopt="-d agcount=1,size=512m"
> > +fsdsopt="-d size=512m"
> >
> >  force_crafted_metadata freeblks 0 "agf 0"
> >  force_crafted_metadata longest $bigval "agf 0"
> > --
> > 2.31.1
> >
>

^ permalink raw reply	[flat|nested] 20+ messages in thread

* Re: [PATCH v3 3/4] tests/xfs: remove single-AG options
  2022-08-30 15:05   ` Darrick J. Wong
@ 2022-08-31  0:10     ` Murphy Zhou
  0 siblings, 0 replies; 20+ messages in thread
From: Murphy Zhou @ 2022-08-31  0:10 UTC (permalink / raw)
  To: Darrick J. Wong; +Cc: fstests, linux-xfs

On Tue, Aug 30, 2022 at 11:05 PM Darrick J. Wong <djwong@kernel.org> wrote:
>
> On Tue, Aug 30, 2022 at 12:44:32PM +0800, Murphy Zhou wrote:
> > Since this xfsprogs commit:
> >       6e0ed3d19c54 mkfs: stop allowing tiny filesystems
> > Single-AG xfs is not allowed.
> >
> > Remove agcount=1 from mkfs options and xfs/202 entirely.
>
> It's not supported for /new/ filesystems, but the rest of the tools must
> continue the same levels of support for existing filesystems, even if
> they cannot be created today.

All these changes, all of them, only fix mkfs complaints, not others.

So it is ONLY about creating new filesystems, not the existing ones.

>
> Second, there exist fstests that need to create a specific layout to
> test some part of the code.  Single-AG filesystems sometimes make this
> much easier.

But it's not allowed to be made by mkfs.xfs. Most of fstests create fs
from scratch, it's hard to cover in this situation.

Thanks,
Murphy

>
> Both of these reasons are why fstests (and LTP) get a special pass on
> all the new checks in mkfs 5.19.
>
> IOWs, we still need to check that xfs_repair works ok for existing
> single AG filesystems.  We can perhaps drop these tests in a decade or
> so, but now is premature.
>
> --D
>
> > Signed-off-by: Murphy Zhou <jencce.kernel@gmail.com>
> > ---
> >  tests/xfs/179     |  2 +-
> >  tests/xfs/202     | 40 ----------------------------------------
> >  tests/xfs/202.out | 29 -----------------------------
> >  tests/xfs/520     |  2 +-
> >  4 files changed, 2 insertions(+), 71 deletions(-)
> >  delete mode 100755 tests/xfs/202
> >  delete mode 100644 tests/xfs/202.out
> >
> > diff --git a/tests/xfs/179 b/tests/xfs/179
> > index ec0cb7e5..f0169717 100755
> > --- a/tests/xfs/179
> > +++ b/tests/xfs/179
> > @@ -22,7 +22,7 @@ _require_cp_reflink
> >  _require_test_program "punch-alternating"
> >
> >  echo "Format and mount"
> > -_scratch_mkfs -d agcount=1 > $seqres.full 2>&1
> > +_scratch_mkfs > $seqres.full 2>&1
> >  _scratch_mount >> $seqres.full 2>&1
> >
> >  testdir=$SCRATCH_MNT/test-$seq
> > diff --git a/tests/xfs/202 b/tests/xfs/202
> > deleted file mode 100755
> > index 5075d3a1..00000000
> > --- a/tests/xfs/202
> > +++ /dev/null
> > @@ -1,40 +0,0 @@
> > -#! /bin/bash
> > -# SPDX-License-Identifier: GPL-2.0
> > -# Copyright (c) 2009 Christoph Hellwig.
> > -#
> > -# FS QA Test No. 202
> > -#
> > -# Test out the xfs_repair -o force_geometry option on single-AG filesystems.
> > -#
> > -. ./common/preamble
> > -_begin_fstest repair auto quick
> > -
> > -# Import common functions.
> > -. ./common/filter
> > -. ./common/repair
> > -
> > -# real QA test starts here
> > -_supported_fs xfs
> > -
> > -# single AG will cause default xfs_repair to fail. This test is actually
> > -# testing the special corner case option needed to repair a single AG fs.
> > -_require_scratch_nocheck
> > -
> > -#
> > -# The AG size is limited to 1TB (or even less with historic xfsprogs),
> > -# so chose a small enough filesystem to make sure we can actually create
> > -# a single AG filesystem.
> > -#
> > -echo "== Creating single-AG filesystem =="
> > -_scratch_mkfs_xfs -d agcount=1 -d size=$((1024*1024*1024)) >/dev/null 2>&1 \
> > - || _fail "!!! failed to make filesystem with single AG"
> > -
> > -echo "== Trying to repair it (should fail) =="
> > -_scratch_xfs_repair
> > -
> > -echo "== Trying to repair it with -o force_geometry =="
> > -_scratch_xfs_repair -o force_geometry 2>&1 | _filter_repair
> > -
> > -# success, all done
> > -echo "*** done"
> > -status=0
> > diff --git a/tests/xfs/202.out b/tests/xfs/202.out
> > deleted file mode 100644
> > index c2c5c881..00000000
> > --- a/tests/xfs/202.out
> > +++ /dev/null
> > @@ -1,29 +0,0 @@
> > -QA output created by 202
> > -== Creating single-AG filesystem ==
> > -== Trying to repair it (should fail) ==
> > -Phase 1 - find and verify superblock...
> > -Only one AG detected - cannot validate filesystem geometry.
> > -Use the -o force_geometry option to proceed.
> > -== Trying to repair it with -o force_geometry ==
> > -Phase 1 - find and verify superblock...
> > -Phase 2 - using <TYPEOF> log
> > -        - zero log...
> > -        - scan filesystem freespace and inode maps...
> > -        - found root inode chunk
> > -Phase 3 - for each AG...
> > -        - scan and clear agi unlinked lists...
> > -        - process known inodes and perform inode discovery...
> > -        - process newly discovered inodes...
> > -Phase 4 - check for duplicate blocks...
> > -        - setting up duplicate extent list...
> > -        - check for inodes claiming duplicate blocks...
> > -Phase 5 - rebuild AG headers and trees...
> > -        - reset superblock...
> > -Phase 6 - check inode connectivity...
> > -        - resetting contents of realtime bitmap and summary inodes
> > -        - traversing filesystem ...
> > -        - traversal finished ...
> > -        - moving disconnected inodes to lost+found ...
> > -Phase 7 - verify and correct link counts...
> > -done
> > -*** done
> > diff --git a/tests/xfs/520 b/tests/xfs/520
> > index d9e252bd..de70db60 100755
> > --- a/tests/xfs/520
> > +++ b/tests/xfs/520
> > @@ -60,7 +60,7 @@ force_crafted_metadata() {
> >  }
> >
> >  bigval=100000000
> > -fsdsopt="-d agcount=1,size=512m"
> > +fsdsopt="-d size=512m"
> >
> >  force_crafted_metadata freeblks 0 "agf 0"
> >  force_crafted_metadata longest $bigval "agf 0"
> > --
> > 2.31.1
> >

^ permalink raw reply	[flat|nested] 20+ messages in thread

* Re: [PATCH v3 1/4] tests: increase fs size for mkfs
  2022-08-30 19:07       ` Zorro Lang
@ 2022-08-31  0:18         ` Murphy Zhou
  2022-08-31  1:53           ` Murphy Zhou
  0 siblings, 1 reply; 20+ messages in thread
From: Murphy Zhou @ 2022-08-31  0:18 UTC (permalink / raw)
  To: Zorro Lang; +Cc: Darrick J. Wong, fstests, linux-xfs

On Wed, Aug 31, 2022 at 3:07 AM Zorro Lang <zlang@redhat.com> wrote:
>
> On Tue, Aug 30, 2022 at 07:46:40AM -0700, Darrick J. Wong wrote:
> > On Tue, Aug 30, 2022 at 03:36:34PM +0800, Zorro Lang wrote:
> > > On Tue, Aug 30, 2022 at 12:44:30PM +0800, Murphy Zhou wrote:
> > > > Since this xfsprogs commit:
> > > >   6e0ed3d19c54 mkfs: stop allowing tiny filesystems
> > > > XFS requires filesystem size bigger then 300m.
> > >
> > > I'm wondering if we can just use 300M, or 512M is better. CC linux-xfs to
> > > get more discussion about how to deal with this change on mkfs.xfs.
> > >
> > > >
> > > > Increase thoese numbers to 512M at least. There is no special
> > > > reason for the magic number 512, just double it from original
> > > > 256M and being reasonable small.
> > >
> > > Hmm... do we need a global parameter to define the minimal XFS size,
> > > or even minimal local fs size? e.g. MIN_XFS_SIZE, or MIN_FS_SIZE ...
> >
> > I think it would be a convenient time to create a helper to capture
> > that, seeing as the LTP developers recently let slip that they have such
> > a thing somewhere, and min fs size logic is scattered around fstests.
>
> It's a little hard to find out all cases which use the minimal fs size.
> But for xfs, I think we can do that with this chance. We can have:
>
>   export XFS_MIN_SIZE=$((300 * 1024 * 1024))
>   export XFS_MIN_LOG_SIZE=$((64 * 1024 * 1024))
>
> at first, then init minimal $FSTYP size likes:
>
>   init_min_fs_size()
>   {
>       case $FSTYP in
>       xfs)
>           FS_MIN_SIZE=$XFS_MIN_SIZE
>           ;;
>       *)
>           FS_MIN_SIZE="unlimited"  # or a big enough size??
>           ;;
>       esac
>   }
>
> Then other fs can follow this to add their size limitation.
> Any better ideas?

In generic/042 f2fs has a similar kind of limitation.

Let me check how LTP guys handle this.

Thanks,
Murphy

>
> Thanks,
> Zorro
>
> >
>
snipped
>

^ permalink raw reply	[flat|nested] 20+ messages in thread

* Re: [PATCH v3 1/4] tests: increase fs size for mkfs
  2022-08-31  0:18         ` Murphy Zhou
@ 2022-08-31  1:53           ` Murphy Zhou
  2022-08-31  5:04             ` Zorro Lang
  0 siblings, 1 reply; 20+ messages in thread
From: Murphy Zhou @ 2022-08-31  1:53 UTC (permalink / raw)
  To: Zorro Lang; +Cc: Darrick J. Wong, fstests, linux-xfs

Oops.. Darrick left a workaround in the xfsprogs code for fstests. My
test setup missed TEST_DEV export somehow and the workaround was not
working.

Nevermind for this patchset..  My bloody hours...

On Wed, Aug 31, 2022 at 8:18 AM Murphy Zhou <jencce.kernel@gmail.com> wrote:
>
> On Wed, Aug 31, 2022 at 3:07 AM Zorro Lang <zlang@redhat.com> wrote:
> >
> > On Tue, Aug 30, 2022 at 07:46:40AM -0700, Darrick J. Wong wrote:
> > > On Tue, Aug 30, 2022 at 03:36:34PM +0800, Zorro Lang wrote:
> > > > On Tue, Aug 30, 2022 at 12:44:30PM +0800, Murphy Zhou wrote:
> > > > > Since this xfsprogs commit:
> > > > >   6e0ed3d19c54 mkfs: stop allowing tiny filesystems
> > > > > XFS requires filesystem size bigger then 300m.
> > > >
> > > > I'm wondering if we can just use 300M, or 512M is better. CC linux-xfs to
> > > > get more discussion about how to deal with this change on mkfs.xfs.
> > > >
> > > > >
> > > > > Increase thoese numbers to 512M at least. There is no special
> > > > > reason for the magic number 512, just double it from original
> > > > > 256M and being reasonable small.
> > > >
> > > > Hmm... do we need a global parameter to define the minimal XFS size,
> > > > or even minimal local fs size? e.g. MIN_XFS_SIZE, or MIN_FS_SIZE ...
> > >
> > > I think it would be a convenient time to create a helper to capture
> > > that, seeing as the LTP developers recently let slip that they have such
> > > a thing somewhere, and min fs size logic is scattered around fstests.
> >
> > It's a little hard to find out all cases which use the minimal fs size.
> > But for xfs, I think we can do that with this chance. We can have:
> >
> >   export XFS_MIN_SIZE=$((300 * 1024 * 1024))
> >   export XFS_MIN_LOG_SIZE=$((64 * 1024 * 1024))
> >
> > at first, then init minimal $FSTYP size likes:
> >
> >   init_min_fs_size()
> >   {
> >       case $FSTYP in
> >       xfs)
> >           FS_MIN_SIZE=$XFS_MIN_SIZE
> >           ;;
> >       *)
> >           FS_MIN_SIZE="unlimited"  # or a big enough size??
> >           ;;
> >       esac
> >   }
> >
> > Then other fs can follow this to add their size limitation.
> > Any better ideas?
>
> In generic/042 f2fs has a similar kind of limitation.
>
> Let me check how LTP guys handle this.
>
> Thanks,
> Murphy
>
> >
> > Thanks,
> > Zorro
> >
> > >
> >
> snipped
> >

^ permalink raw reply	[flat|nested] 20+ messages in thread

* Re: [PATCH v3 1/4] tests: increase fs size for mkfs
  2022-08-31  1:53           ` Murphy Zhou
@ 2022-08-31  5:04             ` Zorro Lang
  2022-08-31  9:34               ` Murphy Zhou
  0 siblings, 1 reply; 20+ messages in thread
From: Zorro Lang @ 2022-08-31  5:04 UTC (permalink / raw)
  To: Murphy Zhou, Darrick J. Wong; +Cc: fstests, linux-xfs

On Wed, Aug 31, 2022 at 09:53:55AM +0800, Murphy Zhou wrote:
> Oops.. Darrick left a workaround in the xfsprogs code for fstests. My
> test setup missed TEST_DEV export somehow and the workaround was not
> working.
> 
> Nevermind for this patchset..  My bloody hours...

Thanks for reminding me, I just checked that patch, and yes:

+       /*
+        * fstests has a large number of tests that create tiny filesystems to
+        * perform specific regression and resource depletion tests in a
+        * controlled environment.  Avoid breaking fstests by allowing
+        * unsupported configurations if TEST_DIR, TEST_DEV, and QA_CHECK_FS
+        * are all set.
+        */
+       if (getenv("TEST_DIR") && getenv("TEST_DEV") && getenv("QA_CHECK_FS"))
+               return;

So we need to set QA_CHECK_FS to use this workaround... that's a little tricky
for xfsprogs, I never thought it would like to do this.

Your patchset is still helpful, I think it's still worth dealing with the minimal
fs size situation, better to make it configurable, or can be detected automatically.
For example:

        # A workaround in xfsprogs can break the limitation of xfs minimal size
        if [ -n "$QA_CHECK_FS" ];then
            export XFS_MIN_SIZE=$((300 * 1024 * 1024))
        else
            export XFS_MIN_SIZE=$((16 * 1024 * 1024))  # or "unlimited"??
        fi
...
        init_min_fs_size()
        {
            if [ -n "$FS_MIN_SIZE" ];then
                return
            fi

            case $FSTYP in
            xfs)
                FS_MIN_SIZE=$XFS_MIN_SIZE
                ;;
            *)
                FS_MIN_SIZE="unlimited"  # or a big enough size??
                ;;
            esac
        }

But a configurable FS_MIN_SIZE might break some golden image. Hmm... need think
about it more, any suggestions are welcome :)

Thanks,
Zorro

> 
> On Wed, Aug 31, 2022 at 8:18 AM Murphy Zhou <jencce.kernel@gmail.com> wrote:
> >
> > On Wed, Aug 31, 2022 at 3:07 AM Zorro Lang <zlang@redhat.com> wrote:
> > >
> > > On Tue, Aug 30, 2022 at 07:46:40AM -0700, Darrick J. Wong wrote:
> > > > On Tue, Aug 30, 2022 at 03:36:34PM +0800, Zorro Lang wrote:
> > > > > On Tue, Aug 30, 2022 at 12:44:30PM +0800, Murphy Zhou wrote:
> > > > > > Since this xfsprogs commit:
> > > > > >   6e0ed3d19c54 mkfs: stop allowing tiny filesystems
> > > > > > XFS requires filesystem size bigger then 300m.
> > > > >
> > > > > I'm wondering if we can just use 300M, or 512M is better. CC linux-xfs to
> > > > > get more discussion about how to deal with this change on mkfs.xfs.
> > > > >
> > > > > >
> > > > > > Increase thoese numbers to 512M at least. There is no special
> > > > > > reason for the magic number 512, just double it from original
> > > > > > 256M and being reasonable small.
> > > > >
> > > > > Hmm... do we need a global parameter to define the minimal XFS size,
> > > > > or even minimal local fs size? e.g. MIN_XFS_SIZE, or MIN_FS_SIZE ...
> > > >
> > > > I think it would be a convenient time to create a helper to capture
> > > > that, seeing as the LTP developers recently let slip that they have such
> > > > a thing somewhere, and min fs size logic is scattered around fstests.
> > >
> > > It's a little hard to find out all cases which use the minimal fs size.
> > > But for xfs, I think we can do that with this chance. We can have:
> > >
> > >   export XFS_MIN_SIZE=$((300 * 1024 * 1024))
> > >   export XFS_MIN_LOG_SIZE=$((64 * 1024 * 1024))
> > >
> > > at first, then init minimal $FSTYP size likes:
> > >
> > >   init_min_fs_size()
> > >   {
> > >       case $FSTYP in
> > >       xfs)
> > >           FS_MIN_SIZE=$XFS_MIN_SIZE
> > >           ;;
> > >       *)
> > >           FS_MIN_SIZE="unlimited"  # or a big enough size??
> > >           ;;
> > >       esac
> > >   }
> > >
> > > Then other fs can follow this to add their size limitation.
> > > Any better ideas?
> >
> > In generic/042 f2fs has a similar kind of limitation.
> >
> > Let me check how LTP guys handle this.
> >
> > Thanks,
> > Murphy
> >
> > >
> > > Thanks,
> > > Zorro
> > >
> > > >
> > >
> > snipped
> > >
> 


^ permalink raw reply	[flat|nested] 20+ messages in thread

* Re: [PATCH v3 1/4] tests: increase fs size for mkfs
  2022-08-31  5:04             ` Zorro Lang
@ 2022-08-31  9:34               ` Murphy Zhou
  0 siblings, 0 replies; 20+ messages in thread
From: Murphy Zhou @ 2022-08-31  9:34 UTC (permalink / raw)
  To: Zorro Lang; +Cc: Darrick J. Wong, fstests, linux-xfs

On Wed, Aug 31, 2022 at 1:04 PM Zorro Lang <zlang@redhat.com> wrote:
>
> On Wed, Aug 31, 2022 at 09:53:55AM +0800, Murphy Zhou wrote:
> > Oops.. Darrick left a workaround in the xfsprogs code for fstests. My
> > test setup missed TEST_DEV export somehow and the workaround was not
> > working.
> >
> > Nevermind for this patchset..  My bloody hours...
>
> Thanks for reminding me, I just checked that patch, and yes:
>
> +       /*
> +        * fstests has a large number of tests that create tiny filesystems to
> +        * perform specific regression and resource depletion tests in a
> +        * controlled environment.  Avoid breaking fstests by allowing
> +        * unsupported configurations if TEST_DIR, TEST_DEV, and QA_CHECK_FS
> +        * are all set.
> +        */
> +       if (getenv("TEST_DIR") && getenv("TEST_DEV") && getenv("QA_CHECK_FS"))
> +               return;
>
> So we need to set QA_CHECK_FS to use this workaround... that's a little tricky
> for xfsprogs, I never thought it would like to do this.

QA_CHECK_FS is already set in `check`. My setup was missing TEST_DEV somehow,
after adding export in local.config like the example, everything works fine.

>
> Your patchset is still helpful, I think it's still worth dealing with the minimal
> fs size situation, better to make it configurable, or can be detected automatically.

Unless it's a hard limit, I think it's not worth the effort. Like
Darrick said, backward
compatibility is also important. Random magic numbers may bring more test
coverage.

Thanks,
Murphy

> For example:
>
>         # A workaround in xfsprogs can break the limitation of xfs minimal size
>         if [ -n "$QA_CHECK_FS" ];then
>             export XFS_MIN_SIZE=$((300 * 1024 * 1024))
>         else
>             export XFS_MIN_SIZE=$((16 * 1024 * 1024))  # or "unlimited"??
>         fi
> ...
>         init_min_fs_size()
>         {
>             if [ -n "$FS_MIN_SIZE" ];then
>                 return
>             fi
>
>             case $FSTYP in
>             xfs)
>                 FS_MIN_SIZE=$XFS_MIN_SIZE
>                 ;;
>             *)
>                 FS_MIN_SIZE="unlimited"  # or a big enough size??
>                 ;;
>             esac
>         }
>
> But a configurable FS_MIN_SIZE might break some golden image. Hmm... need think
> about it more, any suggestions are welcome :)
>
> Thanks,
> Zorro
>
> >
> > On Wed, Aug 31, 2022 at 8:18 AM Murphy Zhou <jencce.kernel@gmail.com> wrote:
> > >
> > > On Wed, Aug 31, 2022 at 3:07 AM Zorro Lang <zlang@redhat.com> wrote:
> > > >
> > > > On Tue, Aug 30, 2022 at 07:46:40AM -0700, Darrick J. Wong wrote:
> > > > > On Tue, Aug 30, 2022 at 03:36:34PM +0800, Zorro Lang wrote:
> > > > > > On Tue, Aug 30, 2022 at 12:44:30PM +0800, Murphy Zhou wrote:
> > > > > > > Since this xfsprogs commit:
> > > > > > >   6e0ed3d19c54 mkfs: stop allowing tiny filesystems
> > > > > > > XFS requires filesystem size bigger then 300m.
> > > > > >
> > > > > > I'm wondering if we can just use 300M, or 512M is better. CC linux-xfs to
> > > > > > get more discussion about how to deal with this change on mkfs.xfs.
> > > > > >
> > > > > > >
> > > > > > > Increase thoese numbers to 512M at least. There is no special
> > > > > > > reason for the magic number 512, just double it from original
> > > > > > > 256M and being reasonable small.
> > > > > >
> > > > > > Hmm... do we need a global parameter to define the minimal XFS size,
> > > > > > or even minimal local fs size? e.g. MIN_XFS_SIZE, or MIN_FS_SIZE ...
> > > > >
> > > > > I think it would be a convenient time to create a helper to capture
> > > > > that, seeing as the LTP developers recently let slip that they have such
> > > > > a thing somewhere, and min fs size logic is scattered around fstests.
> > > >
> > > > It's a little hard to find out all cases which use the minimal fs size.
> > > > But for xfs, I think we can do that with this chance. We can have:
> > > >
> > > >   export XFS_MIN_SIZE=$((300 * 1024 * 1024))
> > > >   export XFS_MIN_LOG_SIZE=$((64 * 1024 * 1024))
> > > >
> > > > at first, then init minimal $FSTYP size likes:
> > > >
> > > >   init_min_fs_size()
> > > >   {
> > > >       case $FSTYP in
> > > >       xfs)
> > > >           FS_MIN_SIZE=$XFS_MIN_SIZE
> > > >           ;;
> > > >       *)
> > > >           FS_MIN_SIZE="unlimited"  # or a big enough size??
> > > >           ;;
> > > >       esac
> > > >   }
> > > >
> > > > Then other fs can follow this to add their size limitation.
> > > > Any better ideas?
> > >
> > > In generic/042 f2fs has a similar kind of limitation.
> > >
> > > Let me check how LTP guys handle this.
> > >
> > > Thanks,
> > > Murphy
> > >
> > > >
> > > > Thanks,
> > > > Zorro
> > > >
> > > > >
> > > >
> > > snipped
> > > >
> >
>

^ permalink raw reply	[flat|nested] 20+ messages in thread

end of thread, other threads:[~2022-08-31  9:34 UTC | newest]

Thread overview: 20+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-08-30  4:44 [PATCH v3 0/4] tweaks for denying tiny xfs Murphy Zhou
2022-08-30  4:44 ` [PATCH v3 1/4] tests: increase fs size for mkfs Murphy Zhou
2022-08-30  7:36   ` Zorro Lang
2022-08-30 14:46     ` Darrick J. Wong
2022-08-30 19:07       ` Zorro Lang
2022-08-31  0:18         ` Murphy Zhou
2022-08-31  1:53           ` Murphy Zhou
2022-08-31  5:04             ` Zorro Lang
2022-08-31  9:34               ` Murphy Zhou
2022-08-30  4:44 ` [PATCH v3 2/4] tests: increase xfs log size Murphy Zhou
2022-08-30  4:44 ` [PATCH v3 3/4] tests/xfs: remove single-AG options Murphy Zhou
2022-08-30 13:42   ` Zorro Lang
2022-08-31  0:02     ` Murphy Zhou
2022-08-30 15:05   ` Darrick J. Wong
2022-08-31  0:10     ` Murphy Zhou
2022-08-30  4:44 ` [PATCH v3 4/4] xfs/144: remove testing root dir inode in AG 1 Murphy Zhou
2022-08-30  7:49   ` Zorro Lang
2022-08-30 14:59     ` Darrick J. Wong
2022-08-30 23:45       ` Murphy Zhou
2022-08-30 23:42     ` Murphy Zhou

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.