Page MenuHomeFreeBSD

D54157.id167805.diff
No OneTemporary

D54157.id167805.diff

diff --git a/sys/kern/uipc_socket.c b/sys/kern/uipc_socket.c
--- a/sys/kern/uipc_socket.c
+++ b/sys/kern/uipc_socket.c
@@ -1726,6 +1726,9 @@
error = EBUSY;
if (error != 0) {
SOCK_UNLOCK(so2);
+ mtx_lock(&sp->mtx);
+ sp->state = SPLICE_EXCEPTION;
+ mtx_unlock(&sp->mtx);
so_unsplice(so, false);
return (error);
}
@@ -1733,6 +1736,9 @@
if (so->so_snd.sb_tls_info != NULL) {
SOCK_SENDBUF_UNLOCK(so2);
SOCK_UNLOCK(so2);
+ mtx_lock(&sp->mtx);
+ sp->state = SPLICE_EXCEPTION;
+ mtx_unlock(&sp->mtx);
so_unsplice(so, false);
return (EINVAL);
}

File Metadata

Mime Type
text/plain
Expires
Mon, Aug 31, 6:12 AM (4 h, 1 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
37658151
Default Alt Text
D54157.id167805.diff (576 B)

Event Timeline