From: John Garry <john.g.garry@oracle.com>
To: Ojaswin Mujoo <ojaswin@linux.ibm.com>
Cc: Shinichiro Kawasaki <shinichiro.kawasaki@wdc.com>,
"Darrick J. Wong" <djwong@kernel.org>,
"linux-xfs@vger.kernel.org" <linux-xfs@vger.kernel.org>
Subject: Re: [bug report] fstests generic/774 hang
Date: Mon, 10 Nov 2025 08:58:27 +0000 [thread overview]
Message-ID: <64746661-261e-478d-9d98-fb27379f9df8@oracle.com> (raw)
In-Reply-To: <aRCB_TzOAtHaTPOl@li-dc0c254c-257c-11b2-a85c-98b6c1322444.ibm.com>
On 09/11/2025 11:58, Ojaswin Mujoo wrote:
>> aw_bsize for me is 1M, and threads is 32
>>
>> aw_bsize is large as XFS supports software-based atomics, which is generally
>> going to be huge compared to anything which HW can support.
>>
>> When I tried to run this test, it was not completing in a sane amount of
>> time - it was taking many minutes before I gave up.
> Hi John, Shinichiro, Darrick.
>
> Thanks for looking into this. Sorry, I'm on vacation so a bit slow in
> responding.
>
> Anyways, the logic behind the filesize calculation is that we want each
> thread to do 100 atomic writes in their own isolated ranges in the file.
> But seems like it is being especially slow when we have high CPUs.
It's not just the number of CPUs which is the problem. The test does the
awu max size writes - for XFS, this size can be many MBs, and not like
typically < 100 KBs for any FS which relies only on HW-based atomic
writes, i.e. ext4. Please also consider limiting the awu max size.
>
> I think in that sense, it'll be better to limit the threads itself
> rather than filesize. Since its a stress test we dont want it to be too
> less. Maybe:
>
> diff --git a/tests/generic/774 b/tests/generic/774
> index 7a4d7016..c68fb4b7 100755
> --- a/tests/generic/774
> +++ b/tests/generic/774
> @@ -28,7 +28,7 @@ awu_max_write=$(_get_atomic_write_unit_max "$SCRATCH_MNT/f1")
> aw_bsize=$(_max "$awu_min_write" "$((awu_max_write/4))")
> fsbsize=$(_get_block_size $SCRATCH_MNT)
>
> -threads=$(_min "$(($(nproc) * 2 * LOAD_FACTOR))" "100")
> +threads=$(_min "$(($(nproc) * 2 * LOAD_FACTOR))" "16")
> filesize=$((aw_bsize * threads * 100))
> depth=$threads
> aw_io_size=$((filesize / threads))
>
> Can you check if this helps?
next prev parent reply other threads:[~2025-11-10 8:58 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-10-30 8:45 [bug report] fstests generic/774 hang Shinichiro Kawasaki
2025-11-05 0:33 ` Darrick J. Wong
2025-11-05 2:19 ` Shinichiro Kawasaki
2025-11-05 8:52 ` John Garry
2025-11-05 10:39 ` John Garry
2025-11-05 11:29 ` John Garry
2025-11-05 12:37 ` Shinichiro Kawasaki
2025-11-06 8:19 ` Shinichiro Kawasaki
2025-11-06 8:53 ` John Garry
2025-11-07 2:27 ` Shinichiro Kawasaki
2025-11-07 4:28 ` Darrick J. Wong
2025-11-07 5:53 ` Shinichiro Kawasaki
2025-11-07 12:48 ` John Garry
2025-11-07 17:50 ` Darrick J. Wong
2025-11-07 23:18 ` Darrick J. Wong
2025-11-10 2:41 ` Shinichiro Kawasaki
2025-11-09 12:02 ` Ojaswin Mujoo
2025-11-10 12:46 ` [WARNING: UNSCANNABLE EXTRACTION FAILED]Re: " Shinichiro Kawasaki
2025-11-10 21:12 ` Darrick J. Wong
2025-11-11 11:43 ` Shinichiro Kawasaki
2025-11-09 11:58 ` Ojaswin Mujoo
2025-11-10 8:58 ` John Garry [this message]
2025-11-10 12:39 ` Shinichiro Kawasaki
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=64746661-261e-478d-9d98-fb27379f9df8@oracle.com \
--to=john.g.garry@oracle.com \
--cc=djwong@kernel.org \
--cc=linux-xfs@vger.kernel.org \
--cc=ojaswin@linux.ibm.com \
--cc=shinichiro.kawasaki@wdc.com \
/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