From: Christoph Hellwig <hch@infradead.org>
To: Jan Kara <jack@suse.cz>
Cc: Christoph Hellwig <hch@infradead.org>,
Aleksa Sarai <cyphar@cyphar.com>,
Alexander Viro <viro@zeniv.linux.org.uk>,
Christian Brauner <brauner@kernel.org>,
Chuck Lever <chuck.lever@oracle.com>,
Jeff Layton <jlayton@kernel.org>,
Amir Goldstein <amir73il@gmail.com>,
Alexander Aring <alex.aring@gmail.com>,
linux-fsdevel@vger.kernel.org, linux-nfs@vger.kernel.org,
linux-kernel@vger.kernel.org, linux-api@vger.kernel.org
Subject: Re: [PATCH RFC v2] fhandle: expose u64 mount id to name_to_handle_at(2)
Date: Mon, 27 May 2024 09:24:02 -0700 [thread overview]
Message-ID: <ZlSzotIrVPGrC6vt@infradead.org> (raw)
In-Reply-To: <20240527133430.ifjo2kksoehtuwrn@quack3>
On Mon, May 27, 2024 at 03:34:30PM +0200, Jan Kara wrote:
> So I was wondering how this is actually working in practice. Checking the
> code, NFS server is (based on configuration in /etc/exports) either using
> device number as the filesystem identifier or fsid / uuid as specified in
> /etc/exports.
Yes, it's a rather suboptimal implementation.
> So returning the 64-bit mount ID from name_to_handle_at() weasels out of
> these "how to identify arbitrary superblock" problems by giving userspace a
> reasonably reliable way to generate this superblock identifier itself. I'm
> fully open to less errorprone API for this but at this point I don't see it
> so changing the mount ID returned from name_to_handle_at() to 64-bit unique
> one seems like a sane practical choice to me...
Well, how about we fix the thing for real:
- allow file systems to provide a uniqueu identifier of at least
uuid size (16 bytes) in the superblock or through an export operation
- for non-persistent file systems allow to generate one at boot time
using the normal uuid generation helpers
- add a new flag to name_to_handle_at/open_by_handle_at to include it
in the file handle, and thus make the file handle work more like
the normal file handle
- add code to nfsd to directly make use of this
This would solve all the problems in this proposal as well as all the
obvious ones it doesn't solve.
next prev parent reply other threads:[~2024-05-27 16:24 UTC|newest]
Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-05-23 20:57 [PATCH RFC v2] fhandle: expose u64 mount id to name_to_handle_at(2) Aleksa Sarai
2024-05-24 4:58 ` Amir Goldstein
2024-05-26 9:25 ` Christoph Hellwig
2024-05-26 19:01 ` Aleksa Sarai
2024-05-27 11:47 ` Christoph Hellwig
2024-05-27 12:29 ` Christian Brauner
2024-05-27 13:17 ` Christian Brauner
2024-05-27 15:47 ` Trond Myklebust
2024-05-28 7:05 ` Christian Brauner
2024-05-27 16:18 ` Christoph Hellwig
2024-05-27 13:34 ` Jan Kara
2024-05-27 16:24 ` Christoph Hellwig [this message]
2024-05-28 8:20 ` Christian Brauner
2024-05-28 8:28 ` Christoph Hellwig
2024-05-28 9:17 ` Christian Brauner
2024-05-28 10:55 ` Christoph Hellwig
2024-05-28 12:04 ` Christian Brauner
2024-05-28 13:22 ` Christoph Hellwig
2024-05-28 13:28 ` Miklos Szeredi
2024-05-29 6:34 ` Christoph Hellwig
2024-06-01 8:12 ` Aleksa Sarai
2024-06-03 10:30 ` Jan Kara
2024-06-04 5:22 ` Christoph Hellwig
2024-05-29 7:40 ` Christian Brauner
2024-05-31 8:14 ` Christoph Hellwig
2024-05-31 10:28 ` Christian Brauner
2024-05-26 22:32 ` Trond Myklebust
2024-05-27 11:49 ` hch
2024-05-27 15:38 ` Trond Myklebust
2024-05-27 16:29 ` hch
2024-05-28 7:12 ` Christian Brauner
2024-05-28 7:15 ` hch
2024-05-28 10:11 ` Jan Kara
2024-05-28 10:56 ` hch
2024-05-28 23:25 ` Dave Chinner
2024-05-29 6:24 ` hch
2024-05-29 7:23 ` Amir Goldstein
2024-05-27 12:22 ` Christian Brauner
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=ZlSzotIrVPGrC6vt@infradead.org \
--to=hch@infradead.org \
--cc=alex.aring@gmail.com \
--cc=amir73il@gmail.com \
--cc=brauner@kernel.org \
--cc=chuck.lever@oracle.com \
--cc=cyphar@cyphar.com \
--cc=jack@suse.cz \
--cc=jlayton@kernel.org \
--cc=linux-api@vger.kernel.org \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-nfs@vger.kernel.org \
--cc=viro@zeniv.linux.org.uk \
/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).