From: Shiyang Ruan <ruansy.fnst@fujitsu.com>
To: "Darrick J. Wong" <djwong@kernel.org>
Cc: Chandan Babu R <chandanbabu@kernel.org>,
Dave Chinner <david@fromorbit.com>,
Dan Williams <dan.j.williams@intel.com>,
Andrew Morton <akpm@linux-foundation.org>,
linux-xfs@vger.kernel.org, nvdimm@lists.linux.dev
Subject: Re: [PATCH] xfs: drop experimental warning for FSDAX
Date: Mon, 9 Oct 2023 22:14:12 +0800 [thread overview]
Message-ID: <28613f6e-2ed2-4c9a-81e3-3dcfdbba867c@fujitsu.com> (raw)
In-Reply-To: <20231005160530.GO21298@frogsfrogsfrogs>
在 2023/10/6 0:05, Darrick J. Wong 写道:
> On Thu, Oct 05, 2023 at 04:53:12PM +0800, Shiyang Ruan wrote:
>>
>>
>> 在 2023/10/5 8:08, Darrick J. Wong 写道:
>>>>>
>>>>> Sorry, I sent the list below to Chandan, didn't cc the maillist
>>>>> because it's just a rough list rather than a PR:
>>>>>
>>>>>
>>>>> 1. subject: [v3] xfs: correct calculation for agend and blockcount
>>>>> url:
>>>>> https://lore.kernel.org/linux-xfs/20230913102942.601271-1-ruansy.fnst@fujitsu.com/
>>>>> note: This one is a fix patch for commit: 5cf32f63b0f4 ("xfs:
>>>>> fix the calculation for "end" and "length"").
>>>>> It can solve the fail of xfs/55[0-2]: the programs
>>>>> accessing the DAX file may not be notified as expected,
>>>>> because the length always 1 block less than actual. Then
>>>>> this patch fixes this.
>>>>>
>>>>>
>>>>> 2. subject: [v15] mm, pmem, xfs: Introduce MF_MEM_PRE_REMOVE for unbind
>>>>> url:
>>>>> https://lore.kernel.org/linux-xfs/20230928103227.250550-1-ruansy.fnst@fujitsu.com/T/#u
>>>>> note: This is a feature patch. It handles the pre-remove event
>>>>> of DAX device, by notifying kernel/user space before actually
>>>>> removing.
>>>>> It has been picked by Andrew in his
>>>>> mm-hotfixes-unstable. I am not sure whether you or he will
>>>>> merge this one.
>>>>>
>>>>>
>>>>> 3. subject: [v1] xfs: drop experimental warning for FSDAX
>>>>> url:
>>>>> https://lore.kernel.org/linux-xfs/20230915063854.1784918-1-ruansy.fnst@fujitsu.com/
>>>>> note: With the patches mentioned above, I did a lot of tests,
>>>>> including xfstests and blackbox tests, the FSDAX function looks
>>>>> good now. So I think the experimental warning could be dropped.
>>>>
>>>> Darrick/Dave, Could you please review the above patch and let us know if you
>>>> have any objections?
>>>
>>> The first two patches are ok. The third one ... well I was about to say
>>> ok but then this happened with generic/269 on a 6.6-rc4 kernel and those
>>> two patches applied:
>>
>> Hi Darrick,
>>
>> Thanks for testing. I just tested this case (generic/269) on v6.6-rc4 with
>> my 3 patches again, but it didn't fail. Such WARNING message didn't show in
>> dmesg too.
>>
>> My local.config is shown as below:
>> [nodax_reflink]
>> export FSTYP=xfs
>> export TEST_DEV=/dev/pmem0
>> export TEST_DIR=/mnt/test
>> export SCRATCH_DEV=/dev/pmem1
>> export SCRATCH_MNT=/mnt/scratch
>> export MKFS_OPTIONS="-m reflink=1,rmapbt=1"
>>
>> [dax_reflink]
>> export FSTYP=xfs
>> export TEST_DEV=/dev/pmem0
>> export TEST_DIR=/mnt/test
>> export SCRATCH_DEV=/dev/pmem1
>> export SCRATCH_MNT=/mnt/scratch
>> export MKFS_OPTIONS="-m reflink=1,rmapbt=1"
>> export MOUNT_OPTIONS="-o dax"
>> export TEST_FS_MOUNT_OPTS="-o dax"
>>
>> And tools version are:
>> - xfstests (v2023.09.03)
>
> Same here.
>
>> - xfsprogs (v6.4.0)
>
> I have a newer branch, though it only contains resyncs with newer kernel
> versions and bugfixes.
>
>> Could you show me more info (such as kernel config, local.config) ? So that
>> I can find out what exactly is going wrong.
>
> The full xml output from fstests is here:
>
> https://djwong.org/fstests/output/.fa9f295c6a2dd4426aa26b4d74e8e0299ad2307507547d5444c157f0e883df92/.2e718425eda716ad848ae05dfab82a670af351f314e26b3cb658a929331bf2eb/result.xml
>
> I think the key difference between your setup and mine is that
> MKFS_OPTIONS includes '-d daxinherit=1' and MOUNT_OPTIONS do not include
> -o dax. That shouldn't make any difference, though.
>
> Also: In the weeks leading up to me adding the PREREMOVE patches a
> couple of days ago, no test (generic/269 or otherwise) hit that ASSERT.
> I'm wondering if that means that the preremove code isn't shooting down
> a page mapping or something?
>
> Grepping through the result.xml reveals:
>
> $ grep -E '(generic.269|xfs.55[012])' /tmp/result.xml
> 563: <testcase classname="xfstests.global" name="xfs/550" time="2">
> 910: <testcase classname="xfstests.global" name="xfs/552" time="2">
> 1685: <testcase classname="xfstests.global" name="generic/269" time="23">
> 1686: <failure message="_check_dmesg: something found in dmesg (see /var/tmp/fstests/generic/269.dmesg)" type="TestFail"/>
> 1689:[ 6046.844058] run fstests generic/269 at 2023-10-04 15:26:57
> 2977: <testcase classname="xfstests.global" name="xfs/551" time="2">
>
> So it's possible that 550 or 552 messed this up for us. :/
>
> See attached kconfig.
Thanks for the info. I tried to make my environment same as yours, but
still couldn't reproduce the fail. I also let xfs/550 & xfs/552 ran
before generic/269.
[root@f38 xfst]# ./check -s nodax_reflink -r xfs/550 xfs/552 generic/269
SECTION -- nodax_reflink
FSTYP -- xfs (debug)
PLATFORM -- Linux/x86_64 f38 6.6.0-rc4 #365 SMP PREEMPT_DYNAMIC Sun
Oct 8 15:19:36 CST 2023
MKFS_OPTIONS -- -f -m reflink=1,rmapbt=1 -d daxinherit=1 /dev/pmem1
MOUNT_OPTIONS -- -o usrquota,grpquota,prjquota, /dev/pmem1 /mnt/scratch
xfs/550 2s ... 2s
xfs/552 2s ... 1s
generic/269 22s ... 23s
Ran: xfs/550 xfs/552 generic/269
Passed all 3 tests
SECTION -- nodax_reflink
=========================
Ran: xfs/550 xfs/552 generic/269
Passed all 3 tests
And xfs/269 is testing fsstress & dd on a scratch device at the same
time. It won't reach the PREREMOVE code or xfs' notify failure code.
I'd like to know what your git tree looks like, is it *v6.6-rc4 + my
patches only* ? Does it contain other patches?
--
Thanks,
Ruan.
>
> --D
>
>>
>>
>> --
>> Thanks,
>> Ruan.
next prev parent reply other threads:[~2023-10-09 14:14 UTC|newest]
Thread overview: 35+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-09-15 6:38 [PATCH] xfs: drop experimental warning for FSDAX Shiyang Ruan
2023-09-21 8:33 ` Shiyang Ruan
2023-09-26 14:55 ` Darrick J. Wong
2023-09-27 1:18 ` Dave Chinner
2023-09-27 1:46 ` Darrick J. Wong
2023-09-27 3:38 ` Chandan Babu R
2023-09-27 5:17 ` Shiyang Ruan
2023-09-27 6:38 ` Shiyang Ruan
2023-09-27 7:31 ` Chandan Babu R
2023-09-27 15:30 ` Andrew Morton
2023-09-28 8:44 ` Shiyang Ruan
2023-09-28 16:20 ` Andrew Morton
2023-09-28 17:13 ` Darrick J. Wong
2023-09-29 11:56 ` Shiyang Ruan
2023-09-29 18:34 ` Dan Williams
2023-10-02 12:15 ` Shiyang Ruan
2023-10-02 12:39 ` Chandan Babu R
2023-10-05 0:08 ` Darrick J. Wong
2023-10-05 8:53 ` Shiyang Ruan
2023-10-05 16:05 ` Darrick J. Wong
2023-10-09 14:14 ` Shiyang Ruan [this message]
2023-10-09 16:47 ` Darrick J. Wong
2023-10-10 3:53 ` Shiyang Ruan
2023-10-10 17:51 ` Darrick J. Wong
2023-09-29 14:17 ` Chandan Babu R
2023-09-29 14:35 ` Eric Sandeen
2023-09-29 15:27 ` Chandan Babu R
2023-09-29 18:28 ` Dan Williams
2023-10-04 17:50 ` Darrick J. Wong
2024-01-11 16:59 ` Bill O'Donnell
2024-01-12 2:21 ` Darrick J. Wong
2024-02-23 7:28 ` Shiyang Ruan
2024-02-26 16:58 ` Dan Williams
2024-02-27 9:50 ` Shiyang Ruan
2024-02-23 17:32 ` Darrick J. Wong
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=28613f6e-2ed2-4c9a-81e3-3dcfdbba867c@fujitsu.com \
--to=ruansy.fnst@fujitsu.com \
--cc=akpm@linux-foundation.org \
--cc=chandanbabu@kernel.org \
--cc=dan.j.williams@intel.com \
--cc=david@fromorbit.com \
--cc=djwong@kernel.org \
--cc=linux-xfs@vger.kernel.org \
--cc=nvdimm@lists.linux.dev \
/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