]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
Merge branch 'tcp-fix-receive-autotune-again'
authorJakub Kicinski <kuba@kernel.org>
Thu, 30 Oct 2025 00:30:45 +0000 (17:30 -0700)
committerJakub Kicinski <kuba@kernel.org>
Thu, 30 Oct 2025 00:30:45 +0000 (17:30 -0700)
commitbcc843bb0e7468de7f2de8bc2e3fa5a54dd1f3d0
tree64bc4c5d5bba2bc7f17bd38e1edcaa4cfc789afa
parentf99c579211f5c77da6750b90c6bec9b264188120
parentaa251c84636c326471ca9d53723816ba8fffe2bf
Merge branch 'tcp-fix-receive-autotune-again'

Matthieu Baerts says:

====================
tcp: fix receive autotune again

Neal Cardwell found that recent kernels were having RWIN limited
issues, even when net.ipv4.tcp_rmem[2] was set to a very big value like
512MB.

He suspected that tcp_stream default buffer size (64KB) was triggering
heuristic added in ea33537d8292 ("tcp: add receive queue awareness
in tcp_rcv_space_adjust()").

After more testing, it turns out the bug was added earlier
with commit 65c5287892e9 ("tcp: fix sk_rcvbuf overshoot").

I forgot once again that DRS has one RTT latency.

MPTCP also got the same issue.

This series :
 - Prevents calling tcp_rcvbuf_grow() on some MPTCP subflows.
 - adds rcv_ssthresh, window_clamp and rcv_wnd to trace_tcp_rcvbuf_grow().
 - Refactors code in a patch with no functional changes.
 - Fixes the issue in the final patch.
====================

Link: https://patch.msgid.link/20251028-net-tcp-recv-autotune-v3-0-74b43ba4c84c@kernel.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>