linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: NeilBrown <neilb@ownmail.net>
To: "Christoph Hellwig" <hch@infradead.org>
Cc: "Christian Brauner" <brauner@kernel.org>,
	"Christoph Hellwig" <hch@infradead.org>,
	"Jeff Layton" <jlayton@kernel.org>,
	"Amir Goldstein" <amir73il@gmail.com>,
	"Alexander Viro" <viro@zeniv.linux.org.uk>,
	"Chuck Lever" <chuck.lever@oracle.com>,
	"Olga Kornievskaia" <okorniev@redhat.com>,
	"Dai Ngo" <Dai.Ngo@oracle.com>, "Tom Talpey" <tom@talpey.com>,
	"Hugh Dickins" <hughd@google.com>,
	"Baolin Wang" <baolin.wang@linux.alibaba.com>,
	"Andrew Morton" <akpm@linux-foundation.org>,
	"Theodore Ts'o" <tytso@mit.edu>,
	"Andreas Dilger" <adilger.kernel@dilger.ca>,
	"Jan Kara" <jack@suse.com>, "Gao Xiang" <xiang@kernel.org>,
	"Chao Yu" <chao@kernel.org>, "Yue Hu" <zbestahu@gmail.com>,
	"Jeffle Xu" <jefflexu@linux.alibaba.com>,
	"Sandeep Dhavale" <dhavale@google.com>,
	"Hongbo Li" <lihongbo22@huawei.com>,
	"Chunhai Guo" <guochunhai@vivo.com>,
	"Carlos Maiolino" <cem@kernel.org>,
	"Ilya Dryomov" <idryomov@gmail.com>,
	"Alex Markuze" <amarkuze@redhat.com>,
	"Viacheslav Dubeyko" <slava@dubeyko.com>,
	"Chris Mason" <clm@fb.com>, "David Sterba" <dsterba@suse.com>,
	"Luis de Bethencourt" <luisbg@kernel.org>,
	"Salah Triki" <salah.triki@gmail.com>,
	"Phillip Lougher" <phillip@squashfs.org.uk>,
	"Steve French" <sfrench@samba.org>,
	"Paulo Alcantara" <pc@manguebit.org>,
	"Ronnie Sahlberg" <ronniesahlberg@gmail.com>,
	"Shyam Prasad N" <sprasad@microsoft.com>,
	"Bharath SM" <bharathsm@microsoft.com>,
	"Miklos Szeredi" <miklos@szeredi.hu>,
	"Mike Marshall" <hubcap@omnibond.com>,
	"Martin Brandenburg" <martin@omnibond.com>,
	"Mark Fasheh" <mark@fasheh.com>,
	"Joel Becker" <jlbec@evilplan.org>,
	"Joseph Qi" <joseph.qi@linux.alibaba.com>,
	"Konstantin Komarov" <almaz.alexandrovich@paragon-software.com>,
	"Ryusuke Konishi" <konishi.ryusuke@gmail.com>,
	"Trond Myklebust" <trondmy@kernel.org>,
	"Anna Schumaker" <anna@kernel.org>,
	"Dave Kleikamp" <shaggy@kernel.org>,
	"David Woodhouse" <dwmw2@infradead.org>,
	"Richard Weinberger" <richard@nod.at>, "Jan Kara" <jack@suse.cz>,
	"Andreas Gruenbacher" <agruenba@redhat.com>,
	"OGAWA Hirofumi" <hirofumi@mail.parknet.co.jp>,
	"Jaegeuk Kim" <jaegeuk@kernel.org>,
	linux-nfs@vger.kernel.org, linux-kernel@vger.kernel.org,
	linux-fsdevel@vger.kernel.org, linux-mm@kvack.org,
	linux-ext4@vger.kernel.org, linux-erofs@lists.ozlabs.org,
	linux-xfs@vger.kernel.org, ceph-devel@vger.kernel.org,
	linux-btrfs@vger.kernel.org, linux-cifs@vger.kernel.org,
	linux-unionfs@vger.kernel.org, devel@lists.orangefs.org,
	ocfs2-devel@lists.linux.dev, ntfs3@lists.linux.dev,
	linux-nilfs@vger.kernel.org,
	jfs-discussion@lists.sourceforge.net,
	linux-mtd@lists.infradead.org, gfs2@lists.linux.dev,
	linux-f2fs-devel@lists.sourceforge.net
Subject: Re: [PATCH 00/29] fs: require filesystems to explicitly opt-in to nfsd export support
Date: Tue, 20 Jan 2026 20:27:46 +1100	[thread overview]
Message-ID: <176890126683.16766.5241619788613840985@noble.neil.brown.name> (raw)
In-Reply-To: <aW8w2SRyFnmA2uqk@infradead.org>

On Tue, 20 Jan 2026, Christoph Hellwig wrote:
> On Tue, Jan 20, 2026 at 07:45:35AM +1100, NeilBrown wrote:
> > This sounds like you are recommending that we give in to bullying.
> 
> I find your suggestion that anything you disagree with is bullying
> extremely offensive.  If you have valid reasons for naming something
> after the user instead of explaining the semantics, please explain that.

I was referring not to your behaviour but to this statement by Christian:

  So if Christoph insists on the other name then I say let's just go with it.

I think that someone "insisting" on something rather than "arguing
rationally" for something "sounds like" bullying.  Had Christian said
something like "Christoph has convinced me of the wisdom of his choice"
that would have been very different.

I am quite happy to have reasoned discussions with people who disagree
with me.  I hope to always provide new relevant information, and hope
they will too.

> 
> If you think NFS actually explains the semantics pretty well, please
> explain that too, especially in forms that can be put into
> documentation, including for the user ABI.

There are multiple issues here:

 - filehandle stability.  As far as I know all filesystems provide
   stable filehandles when the "subtree_check" export option is not used.
   Certainly cgroupfs does.  So having an EXPORT_OP_STABLE_HANDLES
   flag would mean it was set for every filesystem - unless there is
   something else I'm not aware of.  That is certainly possible and I
   hope someone will let me know if I'm missing something.

 - filehandle uniqueness.  This is somewhat important and if a
   filesystem doesn't provide it, that should be considered a bug.  In a
   different thread Christian has observed that there would be benefit
   if pidfs and nsfs provided uniqueness across reboots.  It is quite
   easy for a virtual filesystem to generate a 64 bit random number when
   the fs is initialised, and include that in file handles.  Having a
   EXPORT_OP_REUSES_HANDLES flag could mark filesystems that are still
   buggy if that is thought to be useful.

 - GETATTR always reporting file size of 0.  This is the only concrete
   symptom that Jeff has reported (that I have seen).  This  makes it
   impossible to read files over NFS even if they have content.
   Would EXPORT_OP_INACCURATE_SIZE be useful?

 - maintainer feature choice.  A maintainer may choose not to support
   export over NFS because they feel that there is no value and the
   possible support burden would not be worth it.  There may be locking
   / lease / etc issues that further complicate things.  So it might be
   reasonable for a maintainer to choose to forbid NFS export while
   allowing local fhandle access. EXPORT_OP_NO_NFS_EXPORT.

It took me a while to sift through the code/patches/comments and come to
this understanding and I apologise if I wasn't as clear earlier.  But
my intuition was always that file handle stability was never the real
issue, and maintainer choice was.  Hence my rejection of the
"STABLE_HANDLES" name.

Thanks,
NeilBrown


  reply	other threads:[~2026-01-20  9:28 UTC|newest]

Thread overview: 92+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-01-15 17:47 Jeff Layton
2026-01-15 17:47 ` [PATCH 01/29] exportfs: add new EXPORT_OP_STABLE_HANDLES flag Jeff Layton
2026-01-16 10:45   ` Jan Kara
2026-01-15 17:47 ` [PATCH 02/29] tmpfs: add EXPORT_OP_STABLE_HANDLES flag to export operations Jeff Layton
2026-01-16 10:47   ` Jan Kara
2026-01-15 17:47 ` [PATCH 03/29] ext4: " Jeff Layton
2026-01-16  2:22   ` Theodore Tso
2026-01-16 10:46   ` Jan Kara
2026-01-15 17:47 ` [PATCH 04/29] ext2: " Jeff Layton
2026-01-16 10:46   ` Jan Kara
2026-01-15 17:47 ` [PATCH 05/29] erofs: " Jeff Layton
2026-01-15 17:47 ` [PATCH 06/29] efs: " Jeff Layton
2026-01-15 17:47 ` [PATCH 07/29] xfs: " Jeff Layton
2026-01-15 17:47 ` [PATCH 08/29] ceph: " Jeff Layton
2026-01-15 19:16   ` Viacheslav Dubeyko
2026-01-15 17:47 ` [PATCH 09/29] btrfs: " Jeff Layton
2026-01-15 17:47 ` [PATCH 10/29] befs: " Jeff Layton
2026-01-15 17:47 ` [PATCH 11/29] ufs: " Jeff Layton
2026-01-15 17:47 ` [PATCH 12/29] udf: " Jeff Layton
2026-01-16 10:47   ` Jan Kara
2026-01-15 17:47 ` [PATCH 13/29] affs: " Jeff Layton
2026-01-15 17:47 ` [PATCH 14/29] squashfs: " Jeff Layton
2026-01-15 17:47 ` [PATCH 15/29] smb/client: " Jeff Layton
2026-01-15 19:26   ` Amir Goldstein
2026-01-15 17:47 ` [PATCH 16/29] ovl: " Jeff Layton
2026-01-15 18:21   ` Amir Goldstein
2026-01-15 17:47 ` [PATCH 17/29] orangefs: " Jeff Layton
2026-01-15 17:47 ` [PATCH 18/29] ocfs2: " Jeff Layton
2026-01-16 10:47   ` Jan Kara
2026-01-15 17:47 ` [PATCH 19/29] ntfs3: " Jeff Layton
2026-01-15 17:47 ` [PATCH 20/29] nilfs2: " Jeff Layton
2026-01-19  8:39   ` Ryusuke Konishi
2026-01-15 17:47 ` [PATCH 21/29] nfs: " Jeff Layton
2026-01-15 17:47 ` [PATCH 22/29] jfs: " Jeff Layton
2026-01-15 22:09   ` Dave Kleikamp
2026-01-15 17:47 ` [PATCH 23/29] jffs2: " Jeff Layton
2026-01-18 15:36   ` Richard Weinberger
2026-01-15 17:47 ` [PATCH 24/29] isofs: " Jeff Layton
2026-01-16 10:48   ` Jan Kara
2026-01-15 17:47 ` [PATCH 25/29] gfs2: " Jeff Layton
2026-01-15 17:47 ` [PATCH 26/29] fuse: " Jeff Layton
2026-01-15 18:54   ` Amir Goldstein
2026-01-15 19:46     ` Jeff Layton
2026-01-15 17:47 ` [PATCH 27/29] fat: " Jeff Layton
2026-01-15 17:47 ` [PATCH 28/29] f2fs: " Jeff Layton
2026-01-15 17:48 ` [PATCH 29/29] nfsd: only allow filesystems that set EXPORT_OP_STABLE_HANDLES Jeff Layton
2026-01-15 19:23   ` Amir Goldstein
2026-01-16 12:36     ` Jeff Layton
2026-01-16 14:46       ` Amir Goldstein
2026-01-16 15:13         ` Jeff Layton
2026-01-15 18:17 ` [PATCH 00/29] fs: require filesystems to explicitly opt-in to nfsd export support Amir Goldstein
2026-01-15 18:29   ` Jeff Layton
2026-01-18 23:23     ` NeilBrown
2026-01-19  6:41       ` Christoph Hellwig
2026-01-19  7:22         ` NeilBrown
2026-01-19  7:25           ` Christoph Hellwig
2026-01-19  9:27           ` Christian Brauner
2026-01-19 20:45             ` NeilBrown
2026-01-20  7:38               ` Christoph Hellwig
2026-01-20  9:27                 ` NeilBrown [this message]
2026-01-20 10:34                   ` Christian Brauner
2026-01-21  9:48                   ` Christoph Hellwig
2026-01-21 10:34                     ` NeilBrown
2026-01-21 14:27                       ` Jeff Layton
2026-01-21 14:47                         ` Christoph Hellwig
2026-01-21 15:18                           ` Jeff Layton
2026-01-22  6:37                             ` Christoph Hellwig
2026-01-22 12:12                               ` Jeff Layton
2026-01-22 17:04                                 ` Darrick J. Wong
2026-01-21 12:37                   ` Jeff Layton
2026-01-20  9:04               ` Christian Brauner
2026-01-20  9:41                 ` NeilBrown
2026-01-20 10:31                   ` Christian Brauner
2026-01-20 12:50                     ` Jeff Layton
2026-01-21  3:58                       ` NeilBrown
2026-01-21 11:56                         ` Jeff Layton
2026-01-21 18:59                           ` Amir Goldstein
2026-01-21 10:00                       ` Christoph Hellwig
2026-01-21 10:01                       ` Christoph Hellwig
2026-01-21  9:58                     ` Christoph Hellwig
2026-01-21  9:52                 ` Christoph Hellwig
2026-01-19 12:30           ` Jeff Layton
2026-01-21  4:10             ` NeilBrown
2026-01-15 18:31   ` Chuck Lever
2026-01-15 19:14     ` Amir Goldstein
2026-01-15 19:31       ` Amir Goldstein
2026-01-15 19:37       ` Chuck Lever
2026-01-15 19:47         ` Amir Goldstein
2026-01-15 21:09         ` Dave Chinner
2026-01-15 21:37           ` Chuck Lever
2026-01-15 22:40             ` David Laight
2026-01-19  7:56           ` Christoph Hellwig

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=176890126683.16766.5241619788613840985@noble.neil.brown.name \
    --to=neilb@ownmail.net \
    --cc=Dai.Ngo@oracle.com \
    --cc=adilger.kernel@dilger.ca \
    --cc=agruenba@redhat.com \
    --cc=akpm@linux-foundation.org \
    --cc=almaz.alexandrovich@paragon-software.com \
    --cc=amarkuze@redhat.com \
    --cc=amir73il@gmail.com \
    --cc=anna@kernel.org \
    --cc=baolin.wang@linux.alibaba.com \
    --cc=bharathsm@microsoft.com \
    --cc=brauner@kernel.org \
    --cc=cem@kernel.org \
    --cc=ceph-devel@vger.kernel.org \
    --cc=chao@kernel.org \
    --cc=chuck.lever@oracle.com \
    --cc=clm@fb.com \
    --cc=devel@lists.orangefs.org \
    --cc=dhavale@google.com \
    --cc=dsterba@suse.com \
    --cc=dwmw2@infradead.org \
    --cc=gfs2@lists.linux.dev \
    --cc=guochunhai@vivo.com \
    --cc=hch@infradead.org \
    --cc=hirofumi@mail.parknet.co.jp \
    --cc=hubcap@omnibond.com \
    --cc=hughd@google.com \
    --cc=idryomov@gmail.com \
    --cc=jack@suse.com \
    --cc=jack@suse.cz \
    --cc=jaegeuk@kernel.org \
    --cc=jefflexu@linux.alibaba.com \
    --cc=jfs-discussion@lists.sourceforge.net \
    --cc=jlayton@kernel.org \
    --cc=jlbec@evilplan.org \
    --cc=joseph.qi@linux.alibaba.com \
    --cc=konishi.ryusuke@gmail.com \
    --cc=lihongbo22@huawei.com \
    --cc=linux-btrfs@vger.kernel.org \
    --cc=linux-cifs@vger.kernel.org \
    --cc=linux-erofs@lists.ozlabs.org \
    --cc=linux-ext4@vger.kernel.org \
    --cc=linux-f2fs-devel@lists.sourceforge.net \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=linux-mtd@lists.infradead.org \
    --cc=linux-nfs@vger.kernel.org \
    --cc=linux-nilfs@vger.kernel.org \
    --cc=linux-unionfs@vger.kernel.org \
    --cc=linux-xfs@vger.kernel.org \
    --cc=luisbg@kernel.org \
    --cc=mark@fasheh.com \
    --cc=martin@omnibond.com \
    --cc=miklos@szeredi.hu \
    --cc=neil@brown.name \
    --cc=ntfs3@lists.linux.dev \
    --cc=ocfs2-devel@lists.linux.dev \
    --cc=okorniev@redhat.com \
    --cc=pc@manguebit.org \
    --cc=phillip@squashfs.org.uk \
    --cc=richard@nod.at \
    --cc=ronniesahlberg@gmail.com \
    --cc=salah.triki@gmail.com \
    --cc=sfrench@samba.org \
    --cc=shaggy@kernel.org \
    --cc=slava@dubeyko.com \
    --cc=sprasad@microsoft.com \
    --cc=tom@talpey.com \
    --cc=trondmy@kernel.org \
    --cc=tytso@mit.edu \
    --cc=viro@zeniv.linux.org.uk \
    --cc=xiang@kernel.org \
    --cc=zbestahu@gmail.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox