Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 16 Feb 2019 23:20:57 +0000
From:      bugzilla-noreply@freebsd.org
To:        bugs@FreeBSD.org
Subject:   [Bug 235640] panic: mutex pipe mutex not owned at ../../../kern/sys_pipe.c:1748
Message-ID:  <bug-235640-227-c8lZo4hDGj@https.bugs.freebsd.org/bugzilla/>
In-Reply-To: <bug-235640-227@https.bugs.freebsd.org/bugzilla/>
References:  <bug-235640-227@https.bugs.freebsd.org/bugzilla/>

next in thread | previous in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D235640

--- Comment #3 from Mark Johnston <markj@FreeBSD.org> ---
This is caused by a race between one end of a pipe being closed and the
registration of an EVFILT_WRITE knote for the other end of the pipe.  Suppo=
se
f_attach (pipe_kqfilter()) succeeds, but before kn_list_lock() is called, t=
he
other end of the pipe is closed.  pipeclose() removes the EVFILT_WRITE knote
from that end's knlist, so kn_list_lock() returns NULL, and we call
filt_pipewrite() without the pipe's mutex held.

I think this simply means that the assertion in filt_pipewrite() is wrong. =
 We
can only assert that the pipe lock is held if wpipe->pipe_present =3D=3D
PIPE_ACTIVE.

--=20
You are receiving this mail because:
You are the assignee for the bug.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-235640-227-c8lZo4hDGj>