diff options
| author | Dmitry Vyukov <dvyukov@google.com> | 2021-10-21 14:09:14 +0200 |
|---|---|---|
| committer | Dmitry Vyukov <dvyukov@google.com> | 2021-10-21 15:05:59 +0200 |
| commit | 7841d8b1babc796e48daf138d80288c2ba1c6ea2 (patch) | |
| tree | 90a9fb74ec9b0cd179d66af34bf08cae790956f3 /sys/linux | |
| parent | 99021516e98bad89d08d6254a7c9f58a0dfbeb87 (diff) | |
sys/linux: extend tcp_zerocopy_receive struct
It has been extended in the kernel, see:
https://elixir.bootlin.com/linux/v5.15-rc6/source/include/uapi/linux/tcp.h#L348
Diffstat (limited to 'sys/linux')
| -rw-r--r-- | sys/linux/socket_inet_tcp.txt | 13 | ||||
| -rw-r--r-- | sys/linux/socket_inet_tcp.txt.const | 1 |
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 |
