From: Jens Axboe <axboe@kernel.dk>
To: Amir Goldstein <amir73il@gmail.com>,
Zhang Tianci <zhangtianci.1997@bytedance.com>
Cc: Miklos Szeredi <miklos@szeredi.hu>,
Daniel Rosenberg <drosen@google.com>,
Paul Lawrence <paullawrence@google.com>,
Alessio Balsini <balsini@android.com>,
fuse-devel@lists.sourceforge.net, linux-fsdevel@vger.kernel.org,
Christian Brauner <brauner@kernel.org>
Subject: Re: [External] [PATCH v13 08/10] fuse: update inode size/mtime after passthrough write
Date: Tue, 26 Sep 2023 09:31:29 -0600 [thread overview]
Message-ID: <1dea57e7-87d0-4ed7-9142-3a46dab73805@kernel.dk> (raw)
In-Reply-To: <CAOQ4uxh5EFz-50vBLnfd0_+4uzg6v7Vd_6Wg4yE7uYn3+i3uoQ@mail.gmail.com>
On 9/25/23 4:43 AM, Amir Goldstein wrote:
> Jens,
>
> Are there any IOCB flags that overlayfs (or backing_aio) need
> to set or clear, besides IOCB_DIO_CALLER_COMP, that
> would prevent calling completion from interrupt context?
There are a few flags that may get set (like WAITQ or ALLOC_CACHE), but
I think that should all work ok as-is as the former is just state in
that iocb and that is persistent (and only for the read path), and
ALLOC_CACHE should just be propagated.
> Or is the proper way to deal with this is to defer completion
> to workqueue in the common backing_aio helpers that
> I am re-factoring from overlayfs?
No, deferring to a workqueue would defeat the purpose of the flag, which
is telling you that the caller will ensure that the end_io callback will
happen from task context and need not be deferred to a workqueue. I can
take a peek at how to wire it up properly for overlayfs, have some
travel coming up in a few days.
> IIUC, that could also help overlayfs support
> IOCB_DIO_CALLER_COMP?
>
> Is my understanding correct?
If you peek at fs.h and find the CALLER_COMP references, it'll tell you
a bit about how it works. This is new with the 6.6-rc kernel, there's a
series of patches from me that went in through the iomap tree that
hooked that up. Those commits have an explanation as well.
--
Jens Axboe
next prev parent reply other threads:[~2023-09-26 15:31 UTC|newest]
Thread overview: 55+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-05-19 12:56 [PATCH v13 00/10] fuse: Add support for passthrough read/write Amir Goldstein
2023-05-19 12:56 ` [PATCH v13 01/10] fs: Generic function to convert iocb to rw flags Amir Goldstein
2023-05-19 12:56 ` [PATCH v13 02/10] fuse: Definitions and ioctl for passthrough Amir Goldstein
2023-05-19 15:12 ` Miklos Szeredi
2023-05-20 10:20 ` Amir Goldstein
2023-05-22 14:50 ` Miklos Szeredi
2023-05-24 10:00 ` Amir Goldstein
2023-05-19 12:56 ` [PATCH v13 03/10] fuse: Passthrough initialization and release Amir Goldstein
2023-05-19 12:56 ` [PATCH v13 04/10] fuse: Introduce synchronous read and write for passthrough Amir Goldstein
2023-05-19 12:57 ` [PATCH v13 05/10] fuse: Handle asynchronous read and write in passthrough Amir Goldstein
2023-05-22 15:20 ` Miklos Szeredi
2023-05-24 10:03 ` Amir Goldstein
2023-08-21 15:27 ` Amir Goldstein
2023-08-22 10:18 ` Amir Goldstein
2023-08-22 11:03 ` Miklos Szeredi
2023-08-22 13:22 ` Amir Goldstein
2023-08-22 14:06 ` Miklos Szeredi
2023-08-24 12:11 ` Amir Goldstein
2023-08-29 12:42 ` Miklos Szeredi
2023-05-19 12:57 ` [PATCH v13 06/10] fuse: Use daemon creds in passthrough mode Amir Goldstein
2023-05-19 12:57 ` [PATCH v13 07/10] fuse: Introduce passthrough for mmap Amir Goldstein
2023-05-19 12:57 ` [PATCH v13 08/10] fuse: update inode size/mtime after passthrough write Amir Goldstein
2023-09-25 6:41 ` [External] " Zhang Tianci
2023-09-25 10:43 ` Amir Goldstein
2023-09-26 15:31 ` Jens Axboe [this message]
2023-09-26 15:48 ` Amir Goldstein
2023-09-26 16:19 ` Jens Axboe
2023-09-26 16:56 ` Amir Goldstein
2023-05-19 12:57 ` [PATCH v13 09/10] fuse: invalidate atime after passthrough read/mmap Amir Goldstein
2023-05-19 12:57 ` [PATCH v13 10/10] fuse: setup a passthrough fd without a permanent backing id Amir Goldstein
2023-06-06 10:22 ` Fwd: " Miklos Szeredi
2023-06-06 11:00 ` [fuse-devel] " Amir Goldstein
2023-06-06 12:46 ` Miklos Szeredi
2023-05-20 10:28 ` [PATCH v13 00/10] fuse: Add support for passthrough read/write Amir Goldstein
2023-06-06 9:13 ` Amir Goldstein
2023-06-06 9:49 ` Miklos Szeredi
2023-06-06 11:19 ` Amir Goldstein
2023-06-06 13:06 ` Miklos Szeredi
2023-08-29 18:14 ` Amir Goldstein
2023-09-20 13:56 ` Amir Goldstein
2023-09-20 18:15 ` Miklos Szeredi
2023-09-21 7:33 ` Amir Goldstein
2023-09-21 8:21 ` Miklos Szeredi
2023-09-21 9:17 ` Amir Goldstein
2023-09-21 9:30 ` Miklos Szeredi
2023-09-21 10:31 ` Amir Goldstein
2023-09-21 11:50 ` Miklos Szeredi
2023-09-22 12:45 ` Amir Goldstein
2023-10-08 17:53 ` Amir Goldstein
2023-10-10 14:31 ` Miklos Szeredi
2023-10-10 15:14 ` Amir Goldstein
2023-10-14 16:01 ` Amir Goldstein
2023-10-16 10:30 ` Amir Goldstein
2023-10-16 13:21 ` Miklos Szeredi
2023-10-16 19:16 ` Bernd Schubert
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=1dea57e7-87d0-4ed7-9142-3a46dab73805@kernel.dk \
--to=axboe@kernel.dk \
--cc=amir73il@gmail.com \
--cc=balsini@android.com \
--cc=brauner@kernel.org \
--cc=drosen@google.com \
--cc=fuse-devel@lists.sourceforge.net \
--cc=linux-fsdevel@vger.kernel.org \
--cc=miklos@szeredi.hu \
--cc=paullawrence@google.com \
--cc=zhangtianci.1997@bytedance.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 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.