[PATCH v2 4/4] xfs/21{6,7} Use default -l concurrency=0 on mkfs.xfs that supports it
Lukas Herbolt <[email protected]>
| Newsgroups | org.kernel.vger.fstests |
|---|---|
| Message-ID | <[email protected]> |
The XFS concurrency optimization breaks the log sizing check on systems with non-rotational disks and high amount of CPUs. Default to the old behavior with -l concurrency=0 and with -d concurrency=0. Signed-off-by: Lukas Herbolt <[email protected]> --- changes v2: use default mkfs.xfs for scratch device remove the double check -l/-d as those were introduced together tests/xfs/216 | 6 +++++- tests/xfs/217 | 7 ++++++- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/tests/xfs/216 b/tests/xfs/216 index 091c11d08642..0148e7f4de3e 100755 --- a/tests/xfs/216 +++ b/tests/xfs/216 @@ -22,13 +22,17 @@ _cleanup() _require_scratch _scratch_mkfs_xfs >/dev/null 2>&1 +if _scratch_mkfs_xfs_supports_concurrency -l >> $seqres.full 2>&1; then + loop_mkfs_opts="-l concurrency=0" +else + loop_mkfs_opts="" +fi _scratch_mount _require_loop LOOP_IMG=$SCRATCH_MNT/test_fs LOOP_MNT=$SCRATCH_MNT/test_fs_dir -loop_mkfs_opts= $MKFS_XFS_PROG 2>&1 | grep -q rmapbt && \ loop_mkfs_opts="$loop_mkfs_opts -m rmapbt=0" $MKFS_XFS_PROG 2>&1 | grep -q reflink && \ diff --git a/tests/xfs/217 b/tests/xfs/217 index dae6ce55f475..23aae842d1fb 100755 --- a/tests/xfs/217 +++ b/tests/xfs/217 @@ -21,6 +21,11 @@ _cleanup() _require_scratch _scratch_mkfs_xfs >/dev/null 2>&1 +if _scratch_mkfs_xfs_supports_concurrency -l >> $seqres.full 2>&1; then + loop_mkfs_opts="-l concurrency=0 -d concurrency=0" +else + loop_mkfs_opts="" +fi _scratch_mount # 16T mkfs requires a bit over 2G free _require_fs_space $SCRATCH_MNT 2202000 @@ -34,7 +39,7 @@ _do_mkfs() for i in $*; do echo -n "fssize=${i}g " $MKFS_XFS_PROG -f -b size=4096 -l version=2 \ - -d size=${i}g $loop_dev |grep log + -d size=${i}g $loop_dev $loop_mkfs_opts |grep log _mount $loop_dev $LOOP_MNT echo "test write" > $LOOP_MNT/test _unmount $LOOP_MNT > /dev/null 2>&1 -- 2.54.0