[PATCH v4 net-next 0/2] tcp: mmap: rework zerocopy receive
From: Eric Dumazet
Date: Fri Apr 27 2018 - 11:58:29 EST
syzbot reported a lockdep issue caused by tcp mmap() support.
I implemented Andy Lutomirski nice suggestions to resolve the
issue and increase scalability as well.
First patch is adding a new getsockopt() operation and changes mmap()
behavior.
Second patch changes tcp_mmap reference program.
v4: tcp mmap() support depends on CONFIG_MMU, as kbuild bot told us.
v3: change TCP_ZEROCOPY_RECEIVE to be a getsockopt() option
instead of setsockopt(), feedback from Ka-Cheon Poon
v2: Added a missing page align of zc->length in tcp_zerocopy_receive()
Properly clear zc->recv_skip_hint in case user request was completed.
Eric Dumazet (2):
tcp: add TCP_ZEROCOPY_RECEIVE support for zerocopy receive
selftests: net: tcp_mmap must use TCP_ZEROCOPY_RECEIVE
include/uapi/linux/tcp.h | 8 +
net/ipv4/af_inet.c | 2 +
net/ipv4/tcp.c | 196 +++++++++++++------------
net/ipv6/af_inet6.c | 2 +
tools/testing/selftests/net/tcp_mmap.c | 64 ++++----
5 files changed, 154 insertions(+), 118 deletions(-)
--
2.17.0.441.gb46fe60e1d-goog