diff options
author | Eric Dumazet <edumazet@google.com> | 2015-10-02 20:43:32 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2015-10-03 13:32:41 +0200 |
commit | 079096f103faca2dd87342cca6f23d4b34da8871 (patch) | |
tree | fa3fb0fdc064f1611c464384e70a7a402179808f /block/blk-mq-cpu.c | |
parent | tcp/dccp: remove inet_csk_reqsk_queue_added() timeout argument (diff) | |
download | linux-079096f103faca2dd87342cca6f23d4b34da8871.tar.xz linux-079096f103faca2dd87342cca6f23d4b34da8871.zip |
tcp/dccp: install syn_recv requests into ehash table
In this patch, we insert request sockets into TCP/DCCP
regular ehash table (where ESTABLISHED and TIMEWAIT sockets
are) instead of using the per listener hash table.
ACK packets find SYN_RECV pseudo sockets without having
to find and lock the listener.
In nominal conditions, this halves pressure on listener lock.
Note that this will allow for SO_REUSEPORT refinements,
so that we can select a listener using cpu/numa affinities instead
of the prior 'consistent hash', since only SYN packets will
apply this selection logic.
We will shrink listen_sock in the following patch to ease
code review.
Signed-off-by: Eric Dumazet <edumazet@google.com>
Cc: Ying Cai <ycai@google.com>
Cc: Willem de Bruijn <willemb@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'block/blk-mq-cpu.c')
0 files changed, 0 insertions, 0 deletions