netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 net-next 0/4] tcp: better smp listener behavior
@ 2015-10-08 21:58 Eric Dumazet
  2015-10-08 21:58 ` [PATCH v2 net-next 1/4] net: SO_INCOMING_CPU setsockopt() support Eric Dumazet
                   ` (4 more replies)
  0 siblings, 5 replies; 8+ messages in thread
From: Eric Dumazet @ 2015-10-08 21:58 UTC (permalink / raw)
  To: David S . Miller; +Cc: netdev, Eric Dumazet, Eric Dumazet

As promised in last patch series, we implement a better SO_REUSEPORT
strategy, based on cpu hints if given by the application.

We also moved sk_refcnt out of the cache line containing the lookup
keys, as it was considerably slowing down smp operations because
of false sharing. This was simpler than converting listen sockets
to conventional RCU (to avoid sk_refcnt dirtying)

Could process 6.0 Mpps SYN instead of 4.2 Mpps on my test server.

Eric Dumazet (4):
  net: SO_INCOMING_CPU setsockopt() support
  net: align sk_refcnt on 128 bytes boundary
  net: shrink struct sock and request_sock by 8 bytes
  tcp: shrink tcp_timewait_sock by 8 bytes

 include/linux/tcp.h              |  4 ++--
 include/net/inet_timewait_sock.h |  2 +-
 include/net/request_sock.h       |  7 +++----
 include/net/sock.h               | 41 +++++++++++++++++++++++++++-------------
 net/core/sock.c                  |  5 +++++
 net/ipv4/inet_hashtables.c       |  2 ++
 net/ipv4/syncookies.c            |  4 ++--
 net/ipv4/tcp_input.c             |  2 +-
 net/ipv4/tcp_ipv4.c              |  2 +-
 net/ipv4/tcp_minisocks.c         | 18 +++++++++---------
 net/ipv4/tcp_output.c            |  2 +-
 net/ipv4/udp.c                   |  6 +++++-
 net/ipv6/inet6_hashtables.c      |  2 ++
 net/ipv6/syncookies.c            |  4 ++--
 net/ipv6/tcp_ipv6.c              |  2 +-
 net/ipv6/udp.c                   | 10 +++++++---
 16 files changed, 72 insertions(+), 41 deletions(-)

-- 
2.6.0.rc2.230.g3dd15c0

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2015-10-13  2:12 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-10-08 21:58 [PATCH v2 net-next 0/4] tcp: better smp listener behavior Eric Dumazet
2015-10-08 21:58 ` [PATCH v2 net-next 1/4] net: SO_INCOMING_CPU setsockopt() support Eric Dumazet
2015-10-08 22:14   ` kbuild test robot
2015-10-08 22:24     ` Eric Dumazet
2015-10-08 21:58 ` [PATCH v2 net-next 2/4] net: align sk_refcnt on 128 bytes boundary Eric Dumazet
2015-10-08 21:58 ` [PATCH v2 net-next 3/4] net: shrink struct sock and request_sock by 8 bytes Eric Dumazet
2015-10-08 21:58 ` [PATCH v2 net-next 4/4] tcp: shrink tcp_timewait_sock " Eric Dumazet
2015-10-13  2:28 ` [PATCH v2 net-next 0/4] tcp: better smp listener behavior David Miller

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).