FS/XFS testing framework
 help / color / mirror / Atom feed
From: Lukas Herbolt <lukas@herbolt.com>
To: zlang@kernel.org, djwong@kernel.org
Cc: fstests@vger.kernel.org, Lukas Herbolt <lukas@herbolt.com>
Subject: [PATCH 4/4] xfs/216 xfs/217 Use default -l conccurency=0 on mkfs.xfs that supports it
Date: Thu, 30 Apr 2026 15:13:22 +0200	[thread overview]
Message-ID: <20260430131317.693845-10-lukas@herbolt.com> (raw)
In-Reply-To: <20260430131317.693845-2-lukas@herbolt.com>

The XFS conccurency optimalization breaks the log sizing check on
systems with non-rotational disks and high amount of CPUs. Default to
the old behavior with -l conccurency=0 and with -d concurrency=0.

Signed-off-by: Lukas Herbolt <lukas@herbolt.com>
---
 tests/xfs/216 |  9 +++++++--
 tests/xfs/217 | 17 +++++++++++++++--
 2 files changed, 22 insertions(+), 4 deletions(-)

diff --git a/tests/xfs/216 b/tests/xfs/216
index 091c11d08642..8b4610d5a0a6 100755
--- a/tests/xfs/216
+++ b/tests/xfs/216
@@ -21,14 +21,19 @@ _cleanup()
 }
 
 _require_scratch
-_scratch_mkfs_xfs >/dev/null 2>&1
+if _scratch_mkfs_supports_concurrency -l >> $seqres.full 2>&1; then
+	_scratch_mkfs_xfs -l concurrency=0 >/dev/null 2>&1
+	loop_mkfs_opts="-l concurrency=0"
+else
+	_scratch_mkfs_xfs >/dev/null 2>&1
+	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..7c7b33b1ccf7 100755
--- a/tests/xfs/217
+++ b/tests/xfs/217
@@ -20,7 +20,20 @@ _cleanup()
 }
 
 _require_scratch
-_scratch_mkfs_xfs >/dev/null 2>&1
+if _scratch_mkfs_supports_concurrency -l >> $seqres.full 2>&1; then
+	_scratch_mkfs_xfs -l concurrency=0 >/dev/null 2>&1
+	loop_mkfs_opts="-l concurrency=0"
+		if _scratch_mkfs_supports_concurrency -d >> $seqres.full 2>&1; then
+			# We could go just with -l concurency but then on 512CPUs
+			# it gives log size off by one block so better to set
+			# -d concurrency to 0.
+			loop_mkfs_opts="$loop_mkfs_opts -d concurrency=0"
+
+		fi
+else
+	_scratch_mkfs_xfs >/dev/null 2>&1
+	loop_mkfs_opts=
+fi
 _scratch_mount
 # 16T mkfs requires a bit over 2G free
 _require_fs_space $SCRATCH_MNT 2202000
@@ -34,7 +47,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.53.0


  parent reply	other threads:[~2026-04-30 13:15 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-04-30 13:13 [PATCH 0/4] Fixes for mkfs.xfs with high amount of CPUs and SSDs Lukas Herbolt
2026-04-30 13:13 ` [PATCH 1/4] common/rc: Add helper to calculate percetage of free space available Lukas Herbolt
2026-04-30 16:42   ` Darrick J. Wong
2026-04-30 13:13 ` [PATCH 2/4] common/xfs: helper function to check if -l/-d/-r concurrecy flags Lukas Herbolt
2026-04-30 16:39   ` Darrick J. Wong
2026-04-30 13:13 ` [PATCH 3/4] generic/{102,172,347}: Adapt test for XFS on systems with 128+CPUs + SSDs Lukas Herbolt
2026-04-30 16:31   ` Darrick J. Wong
2026-04-30 13:13 ` Lukas Herbolt [this message]
2026-04-30 16:36   ` [PATCH 4/4] xfs/216 xfs/217 Use default -l conccurency=0 on mkfs.xfs that supports it Darrick J. Wong
2026-05-14  8:11     ` Lukas Herbolt

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20260430131317.693845-10-lukas@herbolt.com \
    --to=lukas@herbolt.com \
    --cc=djwong@kernel.org \
    --cc=fstests@vger.kernel.org \
    --cc=zlang@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox