From: Luis Henriques <luis@igalia.com>
To: Miklos Szeredi <miklos@szeredi.hu>,
Amir Goldstein <amir73il@gmail.com>,
Bernd Schubert <bschubert@ddn.com>,
Bernd Schubert <bernd@bsbernd.com>,
"Darrick J. Wong" <djwong@kernel.org>,
Horst Birthelmer <hbirthelmer@ddn.com>,
Joanne Koong <joannelkoong@gmail.com>, Kevin Chen <kchen@ddn.com>
Cc: linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org,
Matt Harvey <mharvey@jumptrading.com>,
kernel-dev@igalia.com, Luis Henriques <luis@igalia.com>
Subject: [RFC PATCH v3 0/8] fuse: LOOKUP_HANDLE operation
Date: Wed, 25 Feb 2026 11:24:31 +0000 [thread overview]
Message-ID: <20260225112439.27276-1-luis@igalia.com> (raw)
Hi,
I'm sending a new version of my work on lookup_handle, even though it's
still incomplete. As suggested elsewhere, it is now based on compound
commands and thus it sits on top of Horst's patchset [0]. Also, because
this version is a complete re-write of the approach presented in my previous
RFC [1] I'm not going to detail what changed.
Here's a few notes:
- The code isn't yet fully testable as there are several pieces missing.
For example, the FUSE_TMPFILE and FUSE_READDIRPLUS operations are not yet
implemented. The NFS-related changes have also been dropped in this
revision.
- There are several details still to be sorted out in the compound
operations. For example, the nodeid for the statx operation in the
lookup+statx is set to FUSE_ROOT_ID.
- The second operation (mkobj_handle+statx+open) is still draft (or maybe
just wrong!). It's not handling flags correctly, and the error handling
has to be better thought out.
- Some of the patches in this set could probably be picked independently
(e.g. patch 4 or even patch 1)
So, why am I sending this broken and incomplete patchset? Well, simply
because I'd feel more confidence getting this approach validated. I don't
expect any through review, but I would appreciate feedback on anything that
would help me correct major flaws.
[0] https://lore.kernel.org/all/20260210-fuse-compounds-upstream-v5-0-ea0585f62daa@ddn.com
[1] https://lore.kernel.org/all/20251212181254.59365-1-luis@igalia.com
Cheers,
--
Luis
Luis Henriques (8):
fuse: simplify fuse_lookup_name() interface
fuse: export extend_arg() and factor out fuse_ext_size()
fuse: store index of the variable length argument
fuse: drop unnecessary argument from fuse_lookup_init()
fuse: extract helper functions from fuse_do_statx()
fuse: implementation of lookup_handle+statx compound operation
fuse: export fuse_open_args_fill() helper function
fuse: implementation of mkobj_handle+statx+open compound operation
fs/fuse/compound.c | 1 +
fs/fuse/cuse.c | 1 +
fs/fuse/dev.c | 4 +-
fs/fuse/dir.c | 650 +++++++++++++++++++++++++++++++++-----
fs/fuse/file.c | 3 +-
fs/fuse/fuse_i.h | 42 ++-
fs/fuse/inode.c | 50 ++-
fs/fuse/ioctl.c | 1 +
fs/fuse/readdir.c | 2 +-
fs/fuse/virtio_fs.c | 6 +-
fs/fuse/xattr.c | 2 +
include/uapi/linux/fuse.h | 25 +-
12 files changed, 679 insertions(+), 108 deletions(-)
next reply other threads:[~2026-02-25 11:25 UTC|newest]
Thread overview: 41+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-02-25 11:24 Luis Henriques [this message]
2026-02-25 11:24 ` [RFC PATCH v3 1/8] fuse: simplify fuse_lookup_name() interface Luis Henriques
2026-02-27 15:46 ` Miklos Szeredi
2026-02-28 14:42 ` Luis Henriques
2026-02-25 11:24 ` [RFC PATCH v3 2/8] fuse: export extend_arg() and factor out fuse_ext_size() Luis Henriques
2026-02-25 11:24 ` [RFC PATCH v3 3/8] fuse: store index of the variable length argument Luis Henriques
2026-02-27 15:41 ` Miklos Szeredi
2026-02-28 14:50 ` Luis Henriques
2026-02-25 11:24 ` [RFC PATCH v3 4/8] fuse: drop unnecessary argument from fuse_lookup_init() Luis Henriques
2026-02-27 15:57 ` Miklos Szeredi
2026-02-25 11:24 ` [RFC PATCH v3 5/8] fuse: extract helper functions from fuse_do_statx() Luis Henriques
2026-02-25 11:24 ` [RFC PATCH v3 6/8] fuse: implementation of lookup_handle+statx compound operation Luis Henriques
2026-02-25 18:06 ` Amir Goldstein
2026-02-26 9:54 ` Luis Henriques
2026-02-26 10:08 ` Amir Goldstein
2026-02-26 10:29 ` Miklos Szeredi
2026-02-26 15:06 ` Luis Henriques
2026-02-26 15:44 ` Miklos Szeredi
2026-02-26 16:17 ` Luis Henriques
2026-02-26 10:33 ` Luis Henriques
2026-04-07 17:43 ` Joanne Koong
2026-04-07 21:20 ` Luis Henriques
2026-04-07 23:06 ` Joanne Koong
2026-04-07 23:24 ` Joanne Koong
2026-04-07 23:38 ` Joanne Koong
2026-04-08 10:22 ` Luis Henriques
2026-04-08 15:15 ` Joanne Koong
2026-04-08 10:16 ` Luis Henriques
2026-04-08 15:05 ` Joanne Koong
2026-04-09 10:46 ` Luis Henriques
2026-04-09 2:27 ` Jingbo Xu
2026-04-09 11:10 ` Luis Henriques
2026-04-10 2:18 ` Jingbo Xu
2026-04-09 14:03 ` Amir Goldstein
2026-04-10 2:17 ` Jingbo Xu
2026-02-25 11:24 ` [RFC PATCH v3 7/8] fuse: export fuse_open_args_fill() helper function Luis Henriques
2026-02-25 11:24 ` [RFC PATCH v3 8/8] fuse: implementation of mkobj_handle+statx+open compound operation Luis Henriques
2026-02-25 15:08 ` Horst Birthelmer
2026-02-25 17:26 ` Luis Henriques
2026-02-25 15:14 ` [RFC PATCH v3 0/8] fuse: LOOKUP_HANDLE operation Horst Birthelmer
2026-02-25 17:06 ` Luis Henriques
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=20260225112439.27276-1-luis@igalia.com \
--to=luis@igalia.com \
--cc=amir73il@gmail.com \
--cc=bernd@bsbernd.com \
--cc=bschubert@ddn.com \
--cc=djwong@kernel.org \
--cc=hbirthelmer@ddn.com \
--cc=joannelkoong@gmail.com \
--cc=kchen@ddn.com \
--cc=kernel-dev@igalia.com \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mharvey@jumptrading.com \
--cc=miklos@szeredi.hu \
/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
Powered by JetHome