Revert "tcp: change pingpong threshold to 3"
commit 4d8f24eeedc58d5f87b650ddda73c16e8ba56559 upstream. This reverts commit4a41f453be
. This to-be-reverted commit was meant to apply a stricter rule for the stack to enter pingpong mode. However, the condition used to check for interactive session "before(tp->lsndtime, icsk->icsk_ack.lrcvtime)" is jiffy based and might be too coarse, which delays the stack entering pingpong mode. We revert this patch so that we no longer use the above condition to determine interactive session, and also reduce pingpong threshold to 1. Fixes:4a41f453be
("tcp: change pingpong threshold to 3") Reported-by: LemmyHuang <hlm3280@163.com> Suggested-by: Neal Cardwell <ncardwell@google.com> Signed-off-by: Wei Wang <weiwan@google.com> Acked-by: Neal Cardwell <ncardwell@google.com> Reviewed-by: Eric Dumazet <edumazet@google.com> Link: https://lore.kernel.org/r/20220721204404.388396-1-weiwan@google.com Signed-off-by: Jakub Kicinski <kuba@kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:

committed by
Greg Kroah-Hartman

parent
54a73d6544
commit
77ac046a9a
@@ -167,16 +167,13 @@ static void tcp_event_data_sent(struct tcp_sock *tp,
|
||||
if (tcp_packets_in_flight(tp) == 0)
|
||||
tcp_ca_event(sk, CA_EVENT_TX_START);
|
||||
|
||||
/* If this is the first data packet sent in response to the
|
||||
* previous received data,
|
||||
* and it is a reply for ato after last received packet,
|
||||
* increase pingpong count.
|
||||
*/
|
||||
if (before(tp->lsndtime, icsk->icsk_ack.lrcvtime) &&
|
||||
(u32)(now - icsk->icsk_ack.lrcvtime) < icsk->icsk_ack.ato)
|
||||
inet_csk_inc_pingpong_cnt(sk);
|
||||
|
||||
tp->lsndtime = now;
|
||||
|
||||
/* If it is a reply for ato after last received
|
||||
* packet, enter pingpong mode.
|
||||
*/
|
||||
if ((u32)(now - icsk->icsk_ack.lrcvtime) < icsk->icsk_ack.ato)
|
||||
inet_csk_enter_pingpong_mode(sk);
|
||||
}
|
||||
|
||||
/* Account for an ACK we sent. */
|
||||
|
Reference in New Issue
Block a user