Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 03 Sep 2019 14:07:29 -0000
From:      Alan Somers <asomers@freebsd.org>
To:        Konstantin Belousov <kostikbel@gmail.com>
Cc:        src-committers <src-committers@freebsd.org>, svn-src-projects@freebsd.org
Subject:   Re: svn commit: r346640 - in projects/fuse2/sys: fs/fuse kern
Message-ID:  <CAOtMX2hYZ4haMUbQ9rceycbaVwoJ=3fQHmKT69%2BG_C1mcT3K5w@mail.gmail.com>
In-Reply-To: <20190424162837.GD12936@kib.kiev.ua>
References:  <201904241554.x3OFsIjw024483@repo.freebsd.org> <20190424162837.GD12936@kib.kiev.ua>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, Apr 24, 2019 at 10:28 AM Konstantin Belousov
<kostikbel@gmail.com> wrote:
>
> On Wed, Apr 24, 2019 at 03:54:18PM +0000, Alan Somers wrote:
> > Author: asomers
> > Date: Wed Apr 24 15:54:18 2019
> > New Revision: 346640
> > URL: https://svnweb.freebsd.org/changeset/base/346640
> >
> > Log:
> >   fusefs: interruptibility improvements suggested by kib
> >
> >   * Block stop signals in fticket_wait_answer
> This might be ok, but consider using VFCF_SBDRY.

Like the way it's used in nfs_vfsops?

>
> >   * Hold ps_mtx while checking signal disposition
> This part is pointless, as explained before.
>
> >   * style(9) changes
> And sig_isfatal() is still there, which I consider an architectural bug.

Try to think of it as a protocol bug instead.  It's not ideal, but
this is the way that FUSE is supposed to work.  BTW, there actually is
a intr/nointr mount option, but it's implemented in userland within
libfuse.  For FreeBSD we could patch libfuse to implement it
kernel-side instead.  But fixing the multi-threaded signal delivery
logic would require a version of msleep that would only catch fatal
signals.  Is there such a thing?
-Alan


>
> >
> >   PR:         346357
> >   Reported by:        kib
> >   Sponsored by:       The FreeBSD Foundation
> >
> > Modified:
> >   projects/fuse2/sys/fs/fuse/fuse_ipc.c
> >   projects/fuse2/sys/kern/kern_sig.c





Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAOtMX2hYZ4haMUbQ9rceycbaVwoJ=3fQHmKT69%2BG_C1mcT3K5w>