From: Miklos Szeredi <miklos@szeredi.hu>
To: Bernd Schubert <bernd.schubert@fastmail.fm>
Cc: Bernd Schubert <bschubert@ddn.com>,
linux-fsdevel@vger.kernel.org, dsingh@ddn.com,
Hao Xu <howeyxu@tencent.com>
Subject: Re: [PATCH 4/5] [RFC] fuse: Set and use IOCB_DIRECT when FOPEN_DIRECT_IO is set
Date: Mon, 28 Aug 2023 17:05:43 +0200 [thread overview]
Message-ID: <CAJfpegu9MDSB-pCmZr_mz64Cc1r-q8TkNmR7BH6TO3SCq2HAVA@mail.gmail.com> (raw)
In-Reply-To: <d2a7e7a3-6273-475c-8e7c-96de547a5d71@fastmail.fm>
On Mon, 28 Aug 2023 at 16:48, Bernd Schubert <bernd.schubert@fastmail.fm> wrote:
>
> On 8/28/23 13:59, Miklos Szeredi wrote:
> > On Thu, 24 Aug 2023 at 17:07, Bernd Schubert <bschubert@ddn.com> wrote:
> >> - if (!is_sync_kiocb(iocb) && iocb->ki_flags & IOCB_DIRECT) {
> >> - res = fuse_direct_IO(iocb, from);
> >> - } else {
> >> - res = fuse_direct_io(&io, from, &iocb->ki_pos,
> >> - FUSE_DIO_WRITE);
> >> - fuse_write_update_attr(inode, iocb->ki_pos, res);
> >
> > While I think this is correct, I'd really like if the code to be
> > replaced and the replacement are at least somewhat comparable.
>
> Sorry, I have a hard to time to understand "I'd really like if the code
> to be replaced".
What I meant is that generic_file_direct_write() is not an obvious
replacement for the above lines of code.
The reason is that fuse_direct_IO() is handling the sync and async
cases in one function, while the above splits handling it based on
IOCB_DIRECT (which is now lost) and is_sync_kiocb(iocb). If it's okay
to lose IOCB_DIRECT then what's the explanation for the above
condition? It could be historic garbage, but we still need to
understand what is exactly happening.
Thanks,
Miklos
next prev parent reply other threads:[~2023-08-28 15:06 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-08-24 15:05 [PATCH 0/5 v2] fuse direct write consolidation and parallel IO Bernd Schubert
2023-08-24 15:05 ` [PATCH 1/5] fuse: direct IO can use the write-through code path Bernd Schubert
2023-08-28 12:00 ` Miklos Szeredi
2023-08-24 15:05 ` [PATCH 2/5] fuse: Create helper function if DIO write needs exclusive lock Bernd Schubert
2023-08-28 10:33 ` Miklos Szeredi
2023-08-24 15:05 ` [PATCH 3/5] fuse: Allow parallel direct writes for O_DIRECT Bernd Schubert
2023-08-28 10:42 ` Miklos Szeredi
2023-08-28 14:21 ` Bernd Schubert
2023-08-28 15:15 ` Miklos Szeredi
2023-08-24 15:05 ` [PATCH 4/5] [RFC] fuse: Set and use IOCB_DIRECT when FOPEN_DIRECT_IO is set Bernd Schubert
2023-08-28 11:59 ` Miklos Szeredi
2023-08-28 14:48 ` Bernd Schubert
2023-08-28 15:05 ` Miklos Szeredi [this message]
2023-08-29 13:08 ` Bernd Schubert
2023-08-29 13:26 ` Bernd Schubert
2023-08-29 13:52 ` Bernd Schubert
2023-08-28 20:03 ` Bernd Schubert
2023-08-29 7:16 ` Miklos Szeredi
2023-08-24 15:05 ` [PATCH 5/5] fuse: Remove page flush/invaliation in fuse_direct_io Bernd Schubert
2023-08-28 12:01 ` Miklos Szeredi
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=CAJfpegu9MDSB-pCmZr_mz64Cc1r-q8TkNmR7BH6TO3SCq2HAVA@mail.gmail.com \
--to=miklos@szeredi.hu \
--cc=bernd.schubert@fastmail.fm \
--cc=bschubert@ddn.com \
--cc=dsingh@ddn.com \
--cc=howeyxu@tencent.com \
--cc=linux-fsdevel@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).