aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--sys/linux/socket_inet_tcp.txt13
-rw-r--r--sys/linux/socket_inet_tcp.txt.const1
2 files changed, 13 insertions, 1 deletions
diff --git a/sys/linux/socket_inet_tcp.txt b/sys/linux/socket_inet_tcp.txt
index aea321e6b..b59c47e2f 100644
--- a/sys/linux/socket_inet_tcp.txt
+++ b/sys/linux/socket_inet_tcp.txt
@@ -44,9 +44,20 @@ getsockopt$inet6_tcp_TCP_ZEROCOPY_RECEIVE(fd sock_tcp6, level const[IPPROTO_TCP]
tcp_zerocopy_receive {
address vma64
length len[address, int32]
- recv_skip_hint const[0, int32]
+ recv_skip_hint int32 (out)
+ inq int32 (out)
+ err int32 (out)
+ copybuf_address ptr64[out, array[int8]]
+ copybuf_len bytesize[copybuf_address, int32]
+ flags flags[tcp_zerocopy_receive_flags, int32]
+ msg_control ptr64[out, array[int8]]
+ msg_controllen bytesize[msg_control, int64]
+ msg_flags int32 (out)
+ reserved const[0, int32]
}
+tcp_zerocopy_receive_flags = TCP_RECEIVE_ZEROCOPY_FLAG_TLB_CLEAN_HINT
+
# Specific TCP socket options
# TODO: use TCP_SAVED_SYN to extract sequence numbers
diff --git a/sys/linux/socket_inet_tcp.txt.const b/sys/linux/socket_inet_tcp.txt.const
index 167f58a3f..38324a93e 100644
--- a/sys/linux/socket_inet_tcp.txt.const
+++ b/sys/linux/socket_inet_tcp.txt.const
@@ -37,6 +37,7 @@ TCP_NOTSENT_LOWAT = 25
TCP_NO_QUEUE = 0
TCP_QUEUE_SEQ = 21
TCP_QUICKACK = 12
+TCP_RECEIVE_ZEROCOPY_FLAG_TLB_CLEAN_HINT = 1
TCP_RECV_QUEUE = 1
TCP_REPAIR = 19
TCP_REPAIR_OFF = 0