tcp: defer xmit timer reset in tcp_xmit_retransmit_queue()
authorEric Dumazet <edumazet@google.com>
Mon, 4 May 2020 18:27:50 +0000 (11:27 -0700)
committerDavid S. Miller <davem@davemloft.net>
Thu, 7 May 2020 00:29:38 +0000 (17:29 -0700)
commit916e6d1a5ef17a6b3bffad0f086f173cde4240d8
tree098d0ead6696790e52d5789abe5609dfbbfce83c
parent8dc242ad661c2694a582541c2264ffc0e7c4d27d
tcp: defer xmit timer reset in tcp_xmit_retransmit_queue()

As hinted in prior change ("tcp: refine tcp_pacing_delay()
for very low pacing rates"), it is probably best arming
the xmit timer only when all the packets have been scheduled,
rather than when the head of rtx queue has been re-sent.

This does matter for flows having extremely low pacing rates,
since their tp->tcp_wstamp_ns could be far in the future.

Note that the regular xmit path has a stronger limit
in tcp_small_queue_check(), meaning it is less likely to
go beyond the pacing horizon.

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