FreeBSD Bugzilla – Attachment 202077 Details for
Bug 235640
panic: mutex pipe mutex not owned at ../../../kern/sys_pipe.c:1748
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
proposed patch
pipe_assertion.diff (text/plain), 798 bytes, created by
Mark Johnston
on 2019-02-16 23:24:10 UTC
(
hide
)
Description:
proposed patch
Filename:
MIME Type:
Creator:
Mark Johnston
Created:
2019-02-16 23:24:10 UTC
Size:
798 bytes
patch
obsolete
>diff --git a/sys/kern/sys_pipe.c b/sys/kern/sys_pipe.c >index 803c7c03415e..a50fd2d2e173 100644 >--- a/sys/kern/sys_pipe.c >+++ b/sys/kern/sys_pipe.c >@@ -1743,15 +1743,19 @@ static int > filt_pipewrite(struct knote *kn, long hint) > { > struct pipe *wpipe; >- >+ >+ /* >+ * If this end of the pipe is closed, the knote was removed from the >+ * knlist and the list lock is therefore not held. >+ */ > wpipe = kn->kn_hook; >- PIPE_LOCK_ASSERT(wpipe, MA_OWNED); > if (wpipe->pipe_present != PIPE_ACTIVE || > (wpipe->pipe_state & PIPE_EOF)) { > kn->kn_data = 0; > kn->kn_flags |= EV_EOF; > return (1); > } >+ PIPE_LOCK_ASSERT(wpipe, MA_OWNED); > kn->kn_data = (wpipe->pipe_buffer.size > 0) ? > (wpipe->pipe_buffer.size - wpipe->pipe_buffer.cnt) : PIPE_BUF; > if (wpipe->pipe_state & PIPE_DIRECTW)
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 235640
: 202077