sys/sys/socketvar.h changed with
revision 1.57
date: 2014/11/03 17:20:46; author: bluhm; state: Exp; lines: +16 -9;
commitid: Jo3b0hfgHpuqTRST;
Put the socket splicing fields into a seperate struct sosplice that
gets only allocated when needed. This way struct socket shrinks
from 472 to 392 bytes on amd64. When splicing gets active, another
88 bytes are allocated for struct sosplice.
OK dlg@
but sosplice(9) still documents the old unexisting structures, so let's
change it to mention the new struct sosplice.
The following sounds a bit quirky; any better way to put it?
[...] by setting these additional fields in the struct
sosplice *so_sp field in struct socket:
Note how I also changed the mdoc macro `Fa' (function argument) to `Va'
(variable name) as that seems more appropiate. Ingo?
Feedback? OK?
Index: sosplice.9
===================================================================
RCS file: /cvs/src/share/man/man9/sosplice.9,v
retrieving revision 1.8
diff -u -p -r1.8 sosplice.9
--- sosplice.9 13 Jun 2016 21:24:43 -0000 1.8
+++ sosplice.9 14 Aug 2018 20:16:56 -0000
@@ -59,28 +59,30 @@ See the
.Sx ERRORS
section for possible failures.
The connection between both sockets is implemented by setting these
-additional fields in
+additional fields in the
+.Vt struct sosplice Va *so_sp
+field in
.Vt struct socket :
.Pp
.Bl -dash -compact -offset indent
.It
-.Vt struct socket Fa *so_splice
+.Vt struct socket Va *ssp_socket
links from the source to the drain socket.
.It
-.Vt struct socket Fa *so_spliceback
+.Vt struct socket Va *ssp_soback
links back from the drain to the source socket.
.It
-.Vt off_t Fa so_splicelen
+.Vt off_t Va ssp_len
counts the number of bytes spliced so far from this socket.
.It
-.Vt off_t Fa so_splicemax
+.Vt off_t Va ssp_max
specifies the maximum number of bytes to splice from this socket if
non-zero.
.It
-.Vt struct timeval Fa so_idletv
+.Vt struct timeval Va ssp_idletv
specifies the maximum idle time if non-zero.
.It
-.Vt struct timeout Fa so_idleto
+.Vt struct timeout Va ssp_idleto
provides storage for the kernel timeout if idle time is used.
.El
.Pp