umount() taking minutes for FUSE filesystems
Martin Simmons
martin at lispworks.com
Fri Sep 8 17:28:40 UTC 2017
>>>>> On Fri, 08 Sep 2017 15:22:19 +0100, Nikolaus Rath said:
>
> On Sep 08 2017, Martin Simmons <martin at lispworks.com> wrote:
>
> > That will prevent the kernel from sending FUSE_DESTROY, but what is the
> > purpose of FUSE_DESTROY if the user program can't respond to it?
>
> In most cases, umount() is not called by the filesystem but by the
> user. In that case, the FUSE_DESTROY request gives the filesystem a
> chance to clean-up and exit the main loop.
OK, that makes sense.
> That said, the filesystem could also detect the unmount by the kernel
> closing the fd. So I'm not sure what is gained by the extra request
> either... Theoretically, at least under Linux the destroy handler could
> perform some notify_* operations, but I don't see how that would be
> useful when the filesystem will be unmounted anyway.
I don't think the kernel itself ever closes the fd (except implicitly in the
case where the filesystem program dies unexpected).
__Martin
More information about the freebsd-fs
mailing list