Re: [PATCH net-next 0/5] tcp: add zero copy receive

2018-04-16 Thread David Miller
From: Eric Dumazet 
Date: Mon, 16 Apr 2018 10:33:34 -0700

> This patch series add mmap() support to TCP sockets for RX zero copy.
> 
> While tcp_mmap() patch itself is quite small (~100 LOC), optimal support
> for asynchronous mmap() required better SO_RCVLOWAT behavior, and a
> test program to demonstrate how mmap() on TCP sockets can be used.
> 
> Note that mmap() (and associated munmap()) calls are adding more
> pressure on per-process VM semaphore, so might not show benefit
> for processus with high number of threads.

Great work.  I can see how it is less effective without the rcvlowat
fixes/tweaks.

Series applied, thanks Eric!


[PATCH net-next 0/5] tcp: add zero copy receive

2018-04-16 Thread Eric Dumazet
This patch series add mmap() support to TCP sockets for RX zero copy.

While tcp_mmap() patch itself is quite small (~100 LOC), optimal support
for asynchronous mmap() required better SO_RCVLOWAT behavior, and a
test program to demonstrate how mmap() on TCP sockets can be used.

Note that mmap() (and associated munmap()) calls are adding more
pressure on per-process VM semaphore, so might not show benefit
for processus with high number of threads.

Eric Dumazet (5):
  tcp: fix SO_RCVLOWAT and RCVBUF autotuning
  tcp: fix delayed acks behavior for SO_RCVLOWAT
  tcp: avoid extra wakeups for SO_RCVLOWAT users
  tcp: implement mmap() for zero copy receive
  selftests: net: add tcp_mmap program

 include/linux/net.h|   1 +
 include/net/tcp.h  |   4 +
 net/core/sock.c|   5 +-
 net/ipv4/af_inet.c |   3 +-
 net/ipv4/tcp.c | 138 
 net/ipv4/tcp_input.c   |  22 +-
 net/ipv6/af_inet6.c|   3 +-
 tools/testing/selftests/net/Makefile   |   2 +
 tools/testing/selftests/net/tcp_mmap.c | 437 +
 9 files changed, 608 insertions(+), 7 deletions(-)
 create mode 100644 tools/testing/selftests/net/tcp_mmap.c

-- 
2.17.0.484.g0c8726318c-goog