• Eric Dumazet's avatar
    tcp: refine tcp_pacing_delay() for very low pacing rates · 8dc242ad
    Eric Dumazet authored
    With the addition of horizon feature to sch_fq, we noticed some
    suboptimal behavior of extremely low pacing rate TCP flows, especially
    when TCP is not aware of a drop happening in lower stacks.
    
    Back in commit 3f80e08f ("tcp: add tcp_reset_xmit_timer() helper"),
    tcp_pacing_delay() was added to estimate an extra delay to add to standard
    rto timers.
    
    This patch removes the skb argument from this helper and
    tcp_reset_xmit_timer() because it makes more sense to simply
    consider the time at which next packet is allowed to be sent,
    instead of the time of whatever packet has been sent.
    
    This avoids arming RTO timer too soon and removes
    spurious horizon drops.
    Signed-off-by: default avatarEric Dumazet <edumazet@google.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    8dc242ad
tcp.h 70.4 KB