[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CANn89iLth-thO7=V=b+3dbP=K-m+hbBk75FtM+7cFiUphGXwoA@mail.gmail.com>
Date: Mon, 16 Oct 2023 13:40:43 +0200
From: Eric Dumazet <edumazet@...gle.com>
To: Haiyang Zhang <haiyangz@...rosoft.com>
Cc: linux-hyperv@...r.kernel.org, netdev@...r.kernel.org,
kys@...rosoft.com, davem@...emloft.net, kuba@...nel.org,
pabeni@...hat.com, corbet@....net, dsahern@...nel.org,
ncardwell@...gle.com, ycheng@...gle.com, kuniyu@...zon.com,
morleyd@...gle.com, mfreemon@...udflare.com, mubashirq@...gle.com,
linux-doc@...r.kernel.org, weiwan@...gle.com,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH net-next,v3] tcp: Set pingpong threshold via sysctl
On Wed, Oct 11, 2023 at 10:31 PM Haiyang Zhang <haiyangz@...rosoft.com> wrote:
>
> TCP pingpong threshold is 1 by default. But some applications, like SQL DB
> may prefer a higher pingpong threshold to activate delayed acks in quick
> ack mode for better performance.
>
...
>
> diff --git a/net/ipv4/tcp_output.c b/net/ipv4/tcp_output.c
> index f207712eece1..7d0fe76d56ef 100644
> --- a/net/ipv4/tcp_output.c
> +++ b/net/ipv4/tcp_output.c
> @@ -170,10 +170,10 @@ static void tcp_event_data_sent(struct tcp_sock *tp,
> tp->lsndtime = now;
>
> /* If it is a reply for ato after last received
> - * packet, enter pingpong mode.
> + * packet, increase pingpong count.
> */
> if ((u32)(now - icsk->icsk_ack.lrcvtime) < icsk->icsk_ack.ato)
> - inet_csk_enter_pingpong_mode(sk);
> + inet_csk_inc_pingpong_cnt(sk);
> }
>
> /* Account for an ACK we sent. */
OK, but I do not think we solved the fundamental problem of using
jiffies for this heuristic,
especially for HZ=100 or HZ=250 builds.
Reviewed-by: Eric Dumazet <edumazet@...gle.com>
Powered by blists - more mailing lists