From: Christian Brauner <brauner@kernel.org>
To: Chuck Lever III <chuck.lever@oracle.com>,
"Darrick J. Wong" <djwong@kernel.org>
Cc: Jeff Layton <jlayton@kernel.org>,
Erin Shepherd <erin.shepherd@e43.eu>,
Amir Goldstein <amir73il@gmail.com>,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
Linux FS Devel <linux-fsdevel@vger.kernel.org>,
"christian@brauner.io" <christian@brauner.io>,
Paul Moore <paul@paul-moore.com>,
"bluca@debian.org" <bluca@debian.org>
Subject: Re: [PATCH 0/4] pidfs: implement file handle support
Date: Thu, 14 Nov 2024 11:39:26 +0100 [thread overview]
Message-ID: <20241114-dachorganisation-erloschen-4d1b903b65c9@brauner> (raw)
In-Reply-To: <78CFACCD-E2F1-4FF6-96BA-3738748A3B40@oracle.com>
On Wed, Nov 13, 2024 at 02:41:29PM +0000, Chuck Lever III wrote:
>
>
> > On Nov 13, 2024, at 8:29 AM, Jeff Layton <jlayton@kernel.org> wrote:
> >
> > On Wed, 2024-11-13 at 11:17 +0100, Erin Shepherd wrote:
> >> On 13/11/2024 01:40, Darrick J. Wong wrote:
> >>>> Hmm, I guess I might have made that possible, though I'm certainly not
> >>>> familiar enough with the internals of nfsd to be able to test if I've done
> >>>> so.
> >>> AFAIK check_export() in fs/nfsd/export.c spells this it out:
> >>>
> >>> /* There are two requirements on a filesystem to be exportable.
> >>> * 1: We must be able to identify the filesystem from a number.
> >>> * either a device number (so FS_REQUIRES_DEV needed)
> >>> * or an FSID number (so NFSEXP_FSID or ->uuid is needed).
> >>> * 2: We must be able to find an inode from a filehandle.
> >>> * This means that s_export_op must be set.
> >>> * 3: We must not currently be on an idmapped mount.
> >>> */
> >>>
> >>> Granted I've been wrong on account of stale docs before. :$
> >>>
> >>> Though it would be kinda funny if you *could* mess with another
> >>> machine's processes over NFS.
> >>>
> >>> --D
> >>
> >> To be clear I'm not familiar enough with the workings of nfsd to tell if
> >> pidfs fails those requirements and therefore wouldn't become exportable as
> >> a result of this patch, though I gather from you're message that we're in the
> >> clear?
> >>
> >> Regardless I think my question is: do we think either those requirements could
> >> change in the future, or the properties of pidfs could change in the future,
> >> in ways that could accidentally make the filesystem exportable?
> >>
> >> I guess though that the same concern would apply to cgroupfs and it hasn't posed
> >> an issue so far.
> >
> > We have other filesystems that do this sort of thing (like cgroupfs),
> > and we don't allow them to be exportable. We'll need to make sure that
> > that's the case before we merge this, of course, as I forget the
> > details of how that works.
>
> It's far easier to add exportability later than it is
> to remove it if we think it was a mistake. I would err
> on the side of caution if there isn't an immediate
> need/use-case for exposure via NFS.
Tbh, the idea itself of exporting pidfs via nfs is a) crazy and b)
pretty interesting. If we could really export pidfs over NFS cleanly
somehow then we would have a filesystem-like representation of a remote
machine's processes. There could be a lot of interesting things in this.
But I would think that this requires some proper massaging of how pidfs
works. But in principle it might be possible.
Again, I'm not saying it's a great idea and we definitely shouldn't do
it now. But it's an interesting thought experiment at least.
next prev parent reply other threads:[~2024-11-14 10:39 UTC|newest]
Thread overview: 57+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-11-01 13:54 Erin Shepherd
2024-11-01 13:54 ` [PATCH 1/4] pseudofs: add support for export_ops Erin Shepherd
2024-11-12 15:56 ` Amir Goldstein
2024-11-01 13:54 ` [PATCH 2/4] pidfs: implement file handle export support Erin Shepherd
2024-11-12 15:55 ` Amir Goldstein
2024-11-01 13:54 ` [PATCH 3/4] pid: introduce find_get_pid_ns Erin Shepherd
2024-11-12 15:59 ` Amir Goldstein
2024-11-01 13:54 ` [PATCH 4/4] pidfs: implement fh_to_dentry Erin Shepherd
2024-11-12 16:33 ` Amir Goldstein
2024-11-12 23:51 ` Jeff Layton
2024-11-13 8:01 ` Amir Goldstein
2024-11-13 10:11 ` Erin Shepherd
2024-11-13 12:21 ` Christian Brauner
2024-11-13 12:09 ` Christian Brauner
2024-11-13 13:06 ` Erin Shepherd
2024-11-13 13:26 ` Christian Brauner
2024-11-13 13:48 ` Erin Shepherd
2024-11-14 10:29 ` Christian Brauner
2024-11-14 12:21 ` Erin Shepherd
2024-11-12 13:10 ` [PATCH 0/4] pidfs: implement file handle support Christian Brauner
2024-11-12 13:57 ` Jeff Layton
2024-11-12 22:43 ` Erin Shepherd
2024-11-13 0:37 ` Darrick J. Wong
2024-11-13 11:35 ` Christian Brauner
2024-11-13 17:55 ` [PATCH v2 0/3] " Erin Shepherd
2024-11-13 17:55 ` [PATCH v2 1/3] pseudofs: add support for export_ops Erin Shepherd
2024-11-13 17:55 ` [PATCH v2 2/3] exportfs: allow fs to disable CAP_DAC_READ_SEARCH check Erin Shepherd
2024-11-13 22:50 ` kernel test robot
2024-11-14 1:29 ` kernel test robot
2024-11-14 4:37 ` Christoph Hellwig
2024-11-14 12:56 ` Erin Shepherd
2024-11-14 6:37 ` Amir Goldstein
2024-11-14 14:16 ` Christian Brauner
2024-11-13 17:55 ` [PATCH v2 3/3] pidfs: implement file handle support Erin Shepherd
2024-11-14 7:07 ` Amir Goldstein
2024-11-14 12:42 ` Erin Shepherd
2024-11-14 12:52 ` Christian Brauner
2024-11-14 13:13 ` Erin Shepherd
2024-11-14 14:13 ` Christian Brauner
2024-11-14 21:52 ` Erin Shepherd
2024-11-15 7:50 ` Amir Goldstein
2024-11-14 7:02 ` [PATCH v2 0/3] " Amir Goldstein
2024-11-14 12:48 ` Erin Shepherd
2024-11-14 14:27 ` Christian Brauner
2024-11-28 12:33 ` [PATCH RFC 0/2] pidfs: file handle preliminaries Christian Brauner
2024-11-28 12:33 ` [PATCH RFC 1/2] pidfs: rework inode number allocation Christian Brauner
2024-11-28 17:19 ` Amir Goldstein
2024-11-28 12:33 ` [PATCH RFC 2/2] pidfs: remove 32bit inode number handling Christian Brauner
2024-11-28 17:06 ` [PATCH RFC 0/2] pidfs: file handle preliminaries Amir Goldstein
2024-11-14 16:10 ` [PATCH v2 0/3] pidfs: implement file handle support Amir Goldstein
2024-11-12 23:03 ` [PATCH 0/4] " Erin Shepherd
2024-11-13 0:40 ` Darrick J. Wong
2024-11-13 10:17 ` Erin Shepherd
2024-11-13 13:29 ` Jeff Layton
2024-11-13 14:41 ` Chuck Lever III
2024-11-14 10:39 ` Christian Brauner [this message]
2024-11-14 6:55 ` Amir Goldstein
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=20241114-dachorganisation-erloschen-4d1b903b65c9@brauner \
--to=brauner@kernel.org \
--cc=amir73il@gmail.com \
--cc=bluca@debian.org \
--cc=christian@brauner.io \
--cc=chuck.lever@oracle.com \
--cc=djwong@kernel.org \
--cc=erin.shepherd@e43.eu \
--cc=jlayton@kernel.org \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=paul@paul-moore.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
all inboxes | Powered by JetHome®