]> git.baikalelectronics.ru Git - kernel.git/commit
net: revert "Update RFS target at poll for tcp/udp"
authorSoheil Hassas Yeganeh <soheil@google.com>
Thu, 4 Jan 2018 02:47:11 +0000 (21:47 -0500)
committerDavid S. Miller <davem@davemloft.net>
Fri, 5 Jan 2018 16:14:57 +0000 (11:14 -0500)
commitf5cff4d794c475cb5fb649022089a6aca81e0298
tree708cc9eada262ba5ae590aecfab1c8db01ea8814
parent1fd0f995adc31ba5dee35e627fc02cb3e089db10
net: revert "Update RFS target at poll for tcp/udp"

On multi-threaded processes, one common architecture is to have
one (or a small number of) threads polling sockets, and a
considerably larger pool of threads reading form and writing to the
sockets. When we set RPS core on tcp_poll() or udp_poll() we essentially
steer all packets of all the polled FDs to one (or small number of)
cores, creaing a bottleneck and/or RPS misprediction.

Another common architecture is to shard FDs among threads pinned
to cores. In such a setting, setting RPS core in tcp_poll() and
udp_poll() is redundant because the RFS core is correctly
set in recvmsg and sendmsg.

Thus, revert the following commit:
dae6fb68a036 ("net: Update RFS target at poll for tcp/udp").

Signed-off-by: Soheil Hassas Yeganeh <soheil@google.com>
Signed-off-by: Willem de Bruijn <willemb@google.com>
Signed-off-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: Neal Cardwell <ncardwell@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipv4/tcp.c
net/ipv4/udp.c