From patchwork Tue Aug 13 23:26:27 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Vinicius Peixoto X-Patchwork-Id: 1972148 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=lists.ubuntu.com (client-ip=185.125.189.65; helo=lists.ubuntu.com; envelope-from=kernel-team-bounces@lists.ubuntu.com; receiver=patchwork.ozlabs.org) Received: from lists.ubuntu.com (lists.ubuntu.com [185.125.189.65]) (using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4Wk6wZ4c64z1yXl for ; Wed, 14 Aug 2024 09:26:54 +1000 (AEST) Received: from localhost ([127.0.0.1] helo=lists.ubuntu.com) by lists.ubuntu.com with esmtp (Exim 4.86_2) (envelope-from ) id 1se0uf-0001js-ID; Tue, 13 Aug 2024 23:26:49 +0000 Received: from smtp-relay-internal-0.internal ([10.131.114.225] helo=smtp-relay-internal-0.canonical.com) by lists.ubuntu.com with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.86_2) (envelope-from ) id 1se0ue-0001is-Fs for kernel-team@lists.ubuntu.com; Tue, 13 Aug 2024 23:26:48 +0000 Received: from mail-pg1-f200.google.com (mail-pg1-f200.google.com [209.85.215.200]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by smtp-relay-internal-0.canonical.com (Postfix) with ESMTPS id 54A333F1EE for ; Tue, 13 Aug 2024 23:26:48 +0000 (UTC) Received: by mail-pg1-f200.google.com with SMTP id 41be03b00d2f7-7a2a04c79b6so258180a12.0 for ; Tue, 13 Aug 2024 16:26:48 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1723591606; x=1724196406; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=i2wGFn0wGZA10mZN5qK/jNwjaErHAaXf7D/c6Q7Zunw=; b=w9zSsUMJ7gRBtk7iA49xzxWOrXsw4B+QRbqELyKw7EPDkO/AuKc/cCK32ZBAW4EIzF 3zPK2nuVXC5tEe5++CFw9sxdl00rXCnG1+eR+RPCHLlL3czIjGLEjMSU9yMojA4BBRhu p223lwP1sWMP+QbQ7OEbCq8h3Dd2n/GCBHo9FcbYPfmsn8Jjx7BxShoTv3c1gNte0S3F wH/NDFJe23U8z8eBlru5SaY7zt1x7eBEw4GguziPZ0qBYrVBhgDmGmGGNOhwaZHTZjOY 41XNkTrrhkj2Wve3cKopDaOLJH6GKlSz/PLfiXZqTqdjUbx3jIb8RyVUVImgGadYk55K lgMA== X-Gm-Message-State: AOJu0YwaW2loFzxNqgoI8QG+TT1VY1wcD+ULwdiufQyf6mJdxYtGO6Ps Ln4t5XW5kP+BK11yE9R582ASN4UAUG+C7nB+2b5mMW+Pto2T1iUP5VZuTTVrEDdjw8kXlQH3EkF +qewzZI+JT56d8nL5TZHswy9eI/QnVhNq80KKmLyXZyD3bCry3pMcaZrv7RqOb2YMsxHJOFV00F Yf/DHkCaMOIQ== X-Received: by 2002:a17:90b:3510:b0:2c8:2236:e2c3 with SMTP id 98e67ed59e1d1-2d3942ed105mr6806649a91.17.1723591606145; Tue, 13 Aug 2024 16:26:46 -0700 (PDT) X-Google-Smtp-Source: AGHT+IGuiWY6OwddOfleVdM8Loo4zisQZ7mlxme7ThjjKaKMoqf35vjeIPZyUynJ6x+AI9HaWclBOg== X-Received: by 2002:a17:90b:3510:b0:2c8:2236:e2c3 with SMTP id 98e67ed59e1d1-2d3942ed105mr6806629a91.17.1723591605739; Tue, 13 Aug 2024 16:26:45 -0700 (PDT) Received: from canonical.com ([2804:1b3:a700:3d2c:2581:40a7:e5dc:ac36]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-2d3ac7f3adfsm147870a91.33.2024.08.13.16.26.44 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 13 Aug 2024 16:26:45 -0700 (PDT) From: Vinicius Peixoto To: kernel-team@lists.ubuntu.com Subject: [SRU][jammy:linux-gcp][PATCH 2/3] tcp: derive delack_max with tcp_rto_min helper Date: Tue, 13 Aug 2024 20:26:27 -0300 Message-ID: <20240813232628.408515-3-vinicius.peixoto@canonical.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240813232628.408515-1-vinicius.peixoto@canonical.com> References: <20240813232628.408515-1-vinicius.peixoto@canonical.com> MIME-Version: 1.0 X-BeenThere: kernel-team@lists.ubuntu.com X-Mailman-Version: 2.1.20 Precedence: list List-Id: Kernel team discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: kernel-team-bounces@lists.ubuntu.com Sender: "kernel-team" From: Kevin Yang Rto_min now has multiple sources, ordered by preprecedence high to low: ip route option rto_min, icsk->icsk_rto_min. When derive delack_max from rto_min, we should not only use ip route option, but should use tcp_rto_min helper to get the correct rto_min. Signed-off-by: Kevin Yang Reviewed-by: Neal Cardwell Reviewed-by: Yuchung Cheng Reviewed-by: Eric Dumazet Reviewed-by: Tony Lu Reviewed-by: Jakub Kicinski Signed-off-by: David S. Miller (cherry-picked from commit 18fd64d2542292713b0322e6815be059bdee440c) Signed-off-by: Vinicius Peixoto --- net/ipv4/tcp_output.c | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) diff --git a/net/ipv4/tcp_output.c b/net/ipv4/tcp_output.c index 5ccced7e72d1..6fb5629c1db3 100644 --- a/net/ipv4/tcp_output.c +++ b/net/ipv4/tcp_output.c @@ -3913,16 +3913,9 @@ 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 delack_from_rto_min = max(tcp_rto_min(sk), 2) - 1; - delack_max = min_t(u32, delack_max, delack_from_rto_min); - } - return delack_max; + return min(inet_csk(sk)->icsk_delack_max, delack_from_rto_min); } /* Send out a delayed ack, the caller does the policy checking