From: David Ahern <dsahern@kernel.org>
To: Eric Dumazet <edumazet@google.com>,
"David S . Miller" <davem@davemloft.net>,
Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>
Cc: Soheil Hassas Yeganeh <soheil@google.com>,
Neal Cardwell <ncardwell@google.com>,
Yuchung Cheng <ycheng@google.com>,
netdev@vger.kernel.org, eric.dumazet@gmail.com
Subject: Re: [PATCH net-next 3/3] tcp: derive delack_max from rto_min
Date: Wed, 20 Sep 2023 15:57:09 -0600 [thread overview]
Message-ID: <89a3cbd7-fd82-d925-b916-e323033ffdbe@kernel.org> (raw)
In-Reply-To: <20230920172943.4135513-4-edumazet@google.com>
On 9/20/23 11:29 AM, Eric Dumazet wrote:
> diff --git a/net/ipv4/tcp_output.c b/net/ipv4/tcp_output.c
> index 1fc1f879cfd6c28cd655bb8f02eff6624eec2ffc..2d1e4b5ac1ca41ff3db8dc58458d4e922a2c4999 100644
> --- a/net/ipv4/tcp_output.c
> +++ b/net/ipv4/tcp_output.c
> @@ -3977,6 +3977,20 @@ int tcp_connect(struct sock *sk)
> }
> EXPORT_SYMBOL(tcp_connect);
>
> +u32 tcp_delack_max(const struct sock *sk)
> +{
> + const struct dst_entry *dst = __sk_dst_get(sk);
> + u32 delack_max = inet_csk(sk)->icsk_delack_max;
> +
> + if (dst && dst_metric_locked(dst, RTAX_RTO_MIN)) {
> + u32 rto_min = dst_metric_rtt(dst, RTAX_RTO_MIN);
> + u32 delack_from_rto_min = max_t(int, 1, rto_min - 1);
`u32` type with max_t type set as `int`
> +
> + delack_max = min_t(u32, delack_max, delack_from_rto_min);
> + }
> + return delack_max;
> +}
> +
> /* Send out a delayed ack, the caller does the policy checking
> * to see if we should even be here. See tcp_input.c:tcp_ack_snd_check()
> * for details.
> @@ -4012,7 +4026,7 @@ void tcp_send_delayed_ack(struct sock *sk)
> ato = min(ato, max_ato);
> }
>
> - ato = min_t(u32, ato, inet_csk(sk)->icsk_delack_max);
> + ato = min_t(u32, ato, tcp_delack_max(sk));
and then here ato is an `int`.
>
> /* Stay within the limit we were given */
> timeout = jiffies + ato;
next prev parent reply other threads:[~2023-09-20 21:57 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-09-20 17:29 [PATCH net-next 0/3] tcp: add tcp_delack_max() Eric Dumazet
2023-09-20 17:29 ` [PATCH net-next 1/3] net: constify sk_dst_get() and __sk_dst_get() argument Eric Dumazet
2023-09-20 17:29 ` [PATCH net-next 2/3] tcp: constify tcp_rto_min() and tcp_rto_min_us() argument Eric Dumazet
2023-09-20 17:29 ` [PATCH net-next 3/3] tcp: derive delack_max from rto_min Eric Dumazet
2023-09-20 17:34 ` Soheil Hassas Yeganeh
2023-09-20 19:06 ` Neal Cardwell
2023-09-20 21:57 ` David Ahern [this message]
2023-09-21 2:16 ` Eric Dumazet
2023-09-21 12:37 ` David Ahern
2023-09-21 12:58 ` Eric Dumazet
2023-09-22 9:59 ` David Laight
2023-09-22 10:53 ` Eric Dumazet
2023-09-22 16:51 ` David Laight
2023-10-01 12:20 ` [PATCH net-next 0/3] tcp: add tcp_delack_max() patchwork-bot+netdevbpf
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=89a3cbd7-fd82-d925-b916-e323033ffdbe@kernel.org \
--to=dsahern@kernel.org \
--cc=davem@davemloft.net \
--cc=edumazet@google.com \
--cc=eric.dumazet@gmail.com \
--cc=kuba@kernel.org \
--cc=ncardwell@google.com \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=soheil@google.com \
--cc=ycheng@google.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.