From: "Theodore Y. Ts'o" <tytso@mit.edu>
To: Murphy Zhou <jencce.kernel@gmail.com>
Cc: linux-ext4@vger.kernel.org, fstests@vger.kernel.org
Subject: Re: ext4 dio RWF_NOWAIT change
Date: Fri, 7 Feb 2020 10:38:24 -0500 [thread overview]
Message-ID: <20200207153824.GA122530@mit.edu> (raw)
In-Reply-To: <20200205091344.u5c3nnblezzh5xgb@xzhoux.usersys.redhat.com>
On Wed, Feb 05, 2020 at 05:13:44PM +0800, Murphy Zhou wrote:
> Hi,
>
> Kernel commit 378f32bab3714f04c4e0c3aee4129f6703805550
> Author: Matthew Bobrowski <mbobrowski@mbobrowski.org>
> Date: Tue Nov 5 23:02:39 2019 +1100
>
> ext4: introduce direct I/O write using iomap infrastructure
>
>
> Changed the logic of dio+RWF_NOWAIT
>
> from:
>
> - if (!inode_trylock(inode)) {
> - if (iocb->ki_flags & IOCB_NOWAIT)
> - return -EAGAIN;
> - inode_lock(inode);
> - }
>
>
> to:
>
> + if (iocb->ki_flags & IOCB_NOWAIT) {
> + if (!inode_trylock(inode))
> + return -EAGAIN;
> + } else {
> + inode_lock(inode);
> + }
>
>
> fstests generic/471 expecet EAGAIN on this situation, so it started to
> fail since than.
I don't understand why this specific change would cause the situation.
In the generic/471 test, here iocb->ki_flags will have IOCB_NOWAIT
set, and in that case I don't see how there would be a change in
behavior with respect to EAGAIN being returned.
In any case, I've been suppressing generic/471 because of concerns
that the test is bogus so I hadn't noticed. From
kvm-xfstests/test-appliance/files/root/fs/global_exclude:
# The test generic/471 tests the RWF_NOWAIT flag; however
# how it is supposed to work with file systems is disputed,
# and not all device drivers support it. As a result
# it doesn't work if an LVM device driver is in use (as is the
# case with gce-xfstests). So let's suppress it for now. For
# more details see:
# https://lore.kernel.org/linux-block/20190723220502.GX7777@dread.disaster.area/
generic/471
- Ted
next prev parent reply other threads:[~2020-02-07 15:38 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-02-05 9:13 ext4 dio RWF_NOWAIT change Murphy Zhou
2020-02-07 15:38 ` Theodore Y. Ts'o [this message]
2020-02-12 10:50 ` Murphy Zhou
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=20200207153824.GA122530@mit.edu \
--to=tytso@mit.edu \
--cc=fstests@vger.kernel.org \
--cc=jencce.kernel@gmail.com \
--cc=linux-ext4@vger.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.