fuse: allow sharing existing sb
authorMiklos Szeredi <mszeredi@redhat.com>
Thu, 5 Aug 2021 03:57:27 +0000 (05:57 +0200)
committerMiklos Szeredi <mszeredi@redhat.com>
Thu, 5 Aug 2021 03:57:27 +0000 (05:57 +0200)
commit5d5b74aa9c766f0dd37d5cc1a2a7a94586130501
tree9d81da8d4eef764714c301fdfa940db1544f498b
parent62dd1fc8cc6b22e3e568be46ebdb817e66f5d6a5
fuse: allow sharing existing sb

Make it possible to create a new mount from a already working server.

Here's a detailed description of the problem from Jakob:

  "The background for this question is occasional problems we see with our
   fuse filesystem [1] and mount namespaces. On a usual client, we have
   system-wide, autofs managed mountpoints. When a new mount namespace is
   created (which can be done unprivileged in combination with user
   namespaces), it can happen that a mountpoint is used inside the new
   namespace but idle in the root mount namespace. So autofs unmounts the
   parent, system-wide mountpoint. But the fuse module stays active and
   still serves mountpoint in the child mount namespace. Because the fuse
   daemon also blocks other system wide resources corresponding to the
   mountpoint, this situation effectively prevents new mounts until the
   child mount namespaces closes.

   [1] https://github.com/cvmfs/cvmfs"

Reported-by: Jakob Blomer <jblomer@cern.ch>
Signed-off-by: Miklos Szeredi <mszeredi@redhat.com>
fs/fuse/inode.c