]> git.baikalelectronics.ru Git - kernel.git/commit
tcp: tsq: add shortcut in tcp_tasklet_func()
authorEric Dumazet <edumazet@google.com>
Sat, 3 Dec 2016 19:14:52 +0000 (11:14 -0800)
committerDavid S. Miller <davem@davemloft.net>
Mon, 5 Dec 2016 18:32:22 +0000 (13:32 -0500)
commit550a307c115484cbd716b55f9fee314d6175cfc9
tree0327e31d3fe77301791b56fd3a4082cb3229737e
parent2ce4cba5fba6c3368ee6e55616f840c9400d4cae
tcp: tsq: add shortcut in tcp_tasklet_func()

Under high stress, I've seen tcp_tasklet_func() consuming
~700 usec, handling ~150 tcp sockets.

By setting TCP_TSQ_DEFERRED in tcp_wfree(), we give a chance
for other cpus/threads entering tcp_write_xmit() to grab it,
allowing tcp_tasklet_func() to skip sockets that already did
an xmit cycle.

In the future, we might give to ACK processing an increased
budget to reduce even more tcp_tasklet_func() amount of work.

Signed-off-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipv4/tcp_output.c