Files
twx-linux/net/ipv4
Neal Cardwell 4e39b7409f tcp: when rearming RTO, if RTO time is in past then fire RTO ASAP
[ Upstream commit cdbeb633ca ]

In some situations tcp_send_loss_probe() can realize that it's unable
to send a loss probe (TLP), and falls back to calling tcp_rearm_rto()
to schedule an RTO timer. In such cases, sometimes tcp_rearm_rto()
realizes that the RTO was eligible to fire immediately or at some
point in the past (delta_us <= 0). Previously in such cases
tcp_rearm_rto() was scheduling such "overdue" RTOs to happen at now +
icsk_rto, which caused needless delays of hundreds of milliseconds
(and non-linear behavior that made reproducible testing
difficult). This commit changes the logic to schedule "overdue" RTOs
ASAP, rather than at now + icsk_rto.

Fixes: 6ba8a3b19e ("tcp: Tail loss probe (TLP)")
Suggested-by: Yuchung Cheng <ycheng@google.com>
Signed-off-by: Neal Cardwell <ncardwell@google.com>
Signed-off-by: Yuchung Cheng <ycheng@google.com>
Signed-off-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2017-08-30 10:19:21 +02:00
..
2017-06-14 13:16:19 +02:00
…
2017-06-17 06:39:35 +02:00
2016-11-15 07:46:38 +01:00
2016-11-15 07:46:38 +01:00
…
2017-07-05 14:37:14 +02:00
2017-02-26 11:07:50 +01:00
…
…
…
2017-04-30 05:49:29 +02:00
…
2017-08-30 10:19:19 +02:00
…
…
2017-03-22 12:04:17 +01:00
2017-05-14 13:32:58 +02:00
2017-07-21 07:44:54 +02:00
…
…