]> git-server-git.apps.pok.os.sepia.ceph.com Git - xfstests-dev.git/commitdiff
xfs/21{6,7} Use default -l concurrency=0 on mkfs.xfs that supports it master v2026.05.17
authorLukas Herbolt <lukas@herbolt.com>
Thu, 14 May 2026 11:39:15 +0000 (13:39 +0200)
committerZorro Lang <zlang@kernel.org>
Fri, 15 May 2026 16:20:23 +0000 (00:20 +0800)
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 <lukas@herbolt.com>
Reviewed-by: Zorro Lang <zlang@kernel.org>
Reviewed-by: "Darrick J. Wong" <djwong@kernel.org>
Signed-off-by: Zorro Lang <zlang@kernel.org>
tests/xfs/216
tests/xfs/217

index 2096dd9b53d94c417e9fdad978885fafe247585b..1749647c11f7167f1d04bfdbe669684fdc5d4f26 100755 (executable)
@@ -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 && \
index dae6ce55f475dfd399fb697281233a707e5b6c6a..23aae842d1fb6140b6c201f093a16b6e9b86db23 100755 (executable)
@@ -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