All of lore.kernel.org
 help / color / mirror / Atom feed
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(-)


             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 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.