From patchwork Tue Mar 4 15:16:04 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: "Chia-Yu Chang (Nokia)" X-Patchwork-Id: 14000907 X-Patchwork-Delegate: kuba@kernel.org Received: from AS8PR04CU009.outbound.protection.outlook.com (mail-westeuropeazon11011014.outbound.protection.outlook.com [52.101.70.14]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id C0E312862B9; Tue, 4 Mar 2025 15:16:22 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.70.14 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741101384; cv=fail; b=ICcHd7nw52TXFp7KMt0RlI4joOKumdQ2staQy+X6jR5VD8frUCsOhaslv17i0ZCghPVC73J92DEnHV99IonqNJPN95oCphF5pexykTF7XQ77b4FKMlrVXeJcDJDWsrUCsdrIvn598ryYw1lPro1t8q/uMJZQw/9Buyo6w/CfL0A= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1741101384; c=relaxed/simple; bh=Ulhva8XrbgA5oAhnhsw2Uqah86jbo5pF+6CBWOuyN3A=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version:Content-Type; b=slX+RXPgPygjyUhf6lOfUEsjssLFCXhhkfyDC1zIX01nhJMQQ/+nWzD15tqMj+RFpe91n5DdnDUXGVeU5HfCvBIEcVKOPqe5T7M29tIjoU4hw1fZI3Z5KVSuGpSKIt8VmhaEasUVt/82cyYHnswlG1MXe7YXVJ+03KbRv/6Q7uY= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nokia-bell-labs.com; spf=fail smtp.mailfrom=nokia-bell-labs.com; dkim=pass (2048-bit key) header.d=nokia-bell-labs.com header.i=@nokia-bell-labs.com header.b=Cz0KiiIR; arc=fail smtp.client-ip=52.101.70.14 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nokia-bell-labs.com Authentication-Results: smtp.subspace.kernel.org; spf=fail smtp.mailfrom=nokia-bell-labs.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=nokia-bell-labs.com header.i=@nokia-bell-labs.com header.b="Cz0KiiIR" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=afM978J2jppi3Y/6Eb8jTWw0xdwy/N5/g8HBA8Z6H9lQ2W2sVVRGqTUlm4yQ6fJ24WTpGUulTmfJ7K8+BPnZNmzQt4k9hNh5VglbyBRZMo2Lttpm+YSmpiKGr4MCdEKJ0MNG8uENSR+qLycUbme13rhdZ89YKYj77gWFC8hzgGTskZ4J/mSaKgfjZmJ0iNGDAGfHjR9af+gFavs5WMtajf5atfM9deVBAATqCIzJ1MJRDIG3Tvj7aHZGkzGrC9MRtTbNJZaDE+V1LOH503KExCz8SpRiynVSX3XAowiMKhlp4GohW9CFusYtU0bZl1mE90smwJYgfzFeprM/H7DHgg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=M1hOb9LCv/YaASiqgdTDb3G4/8C1/qDxqxoEGYEqugA=; b=LPKCUjsPjxjv0CCT0pLdjuhs1RotIh27Akltj+5vfGeZH4RcEthdqVl02q/QUSQLNbMKplP+eHJUn8WpkcPVKeI/18CZQjaYJEi3zjFUlMaWNdREuaoFwSl/xTndqTa3eLswve9RgLEnCReCN/6SujezkV4l5WVRhFKcP5+F8M0p8kygXfOHlS2aVYg37e875rcAqkwMQcllPqSEdN5/cMD/EdDUOCR3IuPrHBy/5+oKJwLwy9hy7h0Car/6M6gI7wlx98HxvvnmRiyr9NFVnu3t4DUNzXlVQdJIWad2yJ4v0ejrWiU25bQRB+0nO5HuZ/IDuExcRhevQ3K5qey94Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 131.228.2.29) smtp.rcpttodomain=amazon.com smtp.mailfrom=nokia-bell-labs.com; dmarc=pass (p=reject sp=reject pct=100) action=none header.from=nokia-bell-labs.com; dkim=none (message not signed); arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nokia-bell-labs.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=M1hOb9LCv/YaASiqgdTDb3G4/8C1/qDxqxoEGYEqugA=; b=Cz0KiiIR2KKn2RYEop4ZSi+TXqUuADNafdXTXXWJBWsy1zBZr396geDkZVYgwkzieKKxLRtaRIuLXoxbBrLLUd9cuRHTbBX8fS3GVT1ngp1v1EjjEVuYjDGswxoMEoB2J0SD9fTs+ZOF6X10MSPRyKuqiin26K3OoOubvmgTruErq5598L7II3GO1FKbUNIP8sbETS3JK/8+vc6/hLaPITiBsjN3xhVsGFDFt/7yyRMo1wFRl7+POnX9LpX2JZWkGN9acaEvhDHob7zHj8Fm14J3P3cOuqoV0ca1ival5DgjWZnI/csdFKqkAEsmb2fw7M1qcEE7GWDopMC84sfMfw== Received: from AM9P193CA0012.EURP193.PROD.OUTLOOK.COM (2603:10a6:20b:21e::17) by AS8PR07MB9017.eurprd07.prod.outlook.com (2603:10a6:20b:536::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8511.16; Tue, 4 Mar 2025 15:16:20 +0000 Received: from AM2PEPF0001C708.eurprd05.prod.outlook.com (2603:10a6:20b:21e:cafe::ed) by AM9P193CA0012.outlook.office365.com (2603:10a6:20b:21e::17) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8511.16 via Frontend Transport; Tue, 4 Mar 2025 15:16:19 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 131.228.2.29) smtp.mailfrom=nokia-bell-labs.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=nokia-bell-labs.com; Received-SPF: Pass (protection.outlook.com: domain of nokia-bell-labs.com designates 131.228.2.29 as permitted sender) receiver=protection.outlook.com; client-ip=131.228.2.29; helo=fihe3nok0735.emea.nsn-net.net; pr=C Received: from fihe3nok0735.emea.nsn-net.net (131.228.2.29) by AM2PEPF0001C708.mail.protection.outlook.com (10.167.16.196) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8511.15 via Frontend Transport; Tue, 4 Mar 2025 15:16:19 +0000 Received: from sarah.nbl.nsn-rdnet.net (sarah.nbl.nsn-rdnet.net [10.0.73.150]) by fihe3nok0735.emea.nsn-net.net (Postfix) with ESMTP id E464F24DA2; Tue, 4 Mar 2025 17:16:17 +0200 (EET) From: chia-yu.chang@nokia-bell-labs.com To: netdev@vger.kernel.org, dsahern@gmail.com, davem@davemloft.net, edumazet@google.com, dsahern@kernel.org, pabeni@redhat.com, joel.granados@kernel.org, kuba@kernel.org, andrew+netdev@lunn.ch, horms@kernel.org, pablo@netfilter.org, kadlec@netfilter.org, netfilter-devel@vger.kernel.org, coreteam@netfilter.org, kory.maincent@bootlin.com, bpf@vger.kernel.org, kuniyu@amazon.com, andrew@lunn.ch, ij@kernel.org, ncardwell@google.com, koen.de_schepper@nokia-bell-labs.com, g.white@CableLabs.com, ingemar.s.johansson@ericsson.com, mirja.kuehlewind@ericsson.com, cheshire@apple.com, rs.ietf@gmx.at, Jason_Livingood@comcast.com, vidhi_goel@apple.com Cc: Chia-Yu Chang Subject: [PATCH v7 net-next 06/12] tcp: rework {__,}tcp_ecn_check_ce() -> tcp_data_ecn_check() Date: Tue, 4 Mar 2025 16:16:04 +0100 Message-Id: <20250304151607.77950-7-chia-yu.chang@nokia-bell-labs.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250304151607.77950-1-chia-yu.chang@nokia-bell-labs.com> References: <20250304151607.77950-1-chia-yu.chang@nokia-bell-labs.com> Precedence: bulk X-Mailing-List: bpf@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AM2PEPF0001C708:EE_|AS8PR07MB9017:EE_ X-MS-Office365-Filtering-Correlation-Id: 82a699f8-73b4-42f9-8689-08dd5b2f8445 X-LD-Processed: 5d471751-9675-428d-917b-70f44f9630b0,ExtAddr X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|7416014|36860700013|82310400026|1800799024|921020; X-Microsoft-Antispam-Message-Info: =?utf-8?q?MOSiQ9Z4B5LlnJVnePE6yhy9Ru6eBa6?= =?utf-8?q?9cMJoZjBtDw6NKWRMmK+lVsq0oBJ5VP+hWFW+Vn7cCKMYDl50hdW4XYm/8rEAG82X?= =?utf-8?q?ni1b7UX/VmvravMp0XG/DgW3kgz+hyKhHnpmqUzGh2u1UNySLn8JXuQfa5x0Engoq?= =?utf-8?q?pGM/5isieTXuS/XhEk0spKftjoeRT+jrywhUIRx2Yx32C3ale12JW2eDnYAcSP4/h?= =?utf-8?q?Ss9i/iJmPZOeILqNEu4AK+ibOdeOhFYAbn+W17tbXYHsSXR0zDsY6NWm8MhPB1cj/?= =?utf-8?q?E6TMApnAyPg5VZ2s1Z3xFoEuTaLcOaCSqjwUMFS+hCuWQbj9wRHiwhy2rVHDLR7lq?= =?utf-8?q?Jr+3j+EOd8R5OjD6Di8pZUCmqXozqpOprj2jZNOvihUBNf+hzVV9q684+f+o+vRlY?= =?utf-8?q?Y5p72GozA7cGj/4+9wgFR3vOmYfwHT2eeCmgusqHJAjJwn9GJnvxK5BMU9T29z4fR?= =?utf-8?q?EMoAqN/9wGZXOlts1TElGSsrTNAfZaChi7ONk6qGJyEs6jzn2O1ZAScGYxOFn04XJ?= =?utf-8?q?s69eNiIpSskfHYmcajtA7fqUQx6jv6djkFkrzpDeSfmLJGFwQjScht3a5RaE0v6cL?= =?utf-8?q?fyYOPN85v5Tuox+C4g6uttFBJEyOzLN8I9TXi4A7FOu8FT5CkGXC7/0u0iOpYv90g?= =?utf-8?q?XKv4bj0jj04uOog2x7ZnoLhctX96J21DFma2nVkYKj0nAiGggSg9djWNvblR4mEn8?= =?utf-8?q?4OezFO/HjOzA1Ew7VZI2s8jJHsN9UZ3Gsr1mxtAT9ywm2Wu5y50k1f3uXYDdRgvtS?= =?utf-8?q?0CH7UwNkoGvHFLR8Z4ZSE2KAiIZtUk1aTzQa+lyVG/GO6HDAe2sf1q0HnA6auxang?= =?utf-8?q?z6PTmeGTvHr+5C0FDfoO1cS+tnnt5Kg+Cz+TImBs4poRfCWIHDgKP4cQ7MxUOiZRH?= =?utf-8?q?S3qgHbtsLI2bL4nRHbFclx+VfOt7WmsopvV5Z+w6OpVF/wAvf+fzzHGaSO4+bPujX?= =?utf-8?q?XPm4wwyTL++m8tmNoc728K0KDjQsvmObhtmm0y6k5U2LV/YRNyisTza9wM2bwoaFq?= =?utf-8?q?+OiF+Xp5Hv0jx4p62eZRvDNZH617eIbxfa6kUXbE6eoi+wnm7tMu0XyN1OI0dEsxg?= =?utf-8?q?2a29UhkHmXbET4zlBo126TwD8T8CFpCjeQSH68HDCT+ctv6BBrmAja75YgaPqCeBS?= =?utf-8?q?Jy4yolH4DnkGGiFFw9HHb42b8xK+XSc2ZpwVU109Y0ssVX0vETsODFpQoRMc91kvi?= =?utf-8?q?5QXyxRq+jasVWB6SpI1NN2kF2o7PkzdnBdSgi73dqOZyUG6ugwF3lMHFn3n+xoefU?= =?utf-8?q?I96YxgayCjwX0cRAhxQbccIsV7RY4AVag/BolGq4z+/MFmu4RvT66vFkSRJsyo7nH?= =?utf-8?q?/D1JZXHDa9tQLXcZkEGFZO8fNaVdH4qdJyETo+sefQMCxC10nGqh1ROiA+saoHcRy?= =?utf-8?q?97NubizBPWYmmkXzIZZHmxj/Fs0D27Za0lfhi4HWhPlmNmuErvzL0s3GUBMLgomip?= =?utf-8?q?ilNTQbpiiY?= X-Forefront-Antispam-Report: CIP:131.228.2.29;CTRY:FI;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:fihe3nok0735.emea.nsn-net.net;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230040)(376014)(7416014)(36860700013)(82310400026)(1800799024)(921020);DIR:OUT;SFP:1101; X-OriginatorOrg: nokia-bell-labs.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Mar 2025 15:16:19.5030 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 82a699f8-73b4-42f9-8689-08dd5b2f8445 X-MS-Exchange-CrossTenant-Id: 5d471751-9675-428d-917b-70f44f9630b0 X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=5d471751-9675-428d-917b-70f44f9630b0;Ip=[131.228.2.29];Helo=[fihe3nok0735.emea.nsn-net.net] X-MS-Exchange-CrossTenant-AuthSource: AM2PEPF0001C708.eurprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR07MB9017 X-Patchwork-Delegate: kuba@kernel.org From: Ilpo Järvinen Rename tcp_ecn_check_ce to tcp_data_ecn_check as it is called only for data segments, not for ACKs (with AccECN, also ACKs may get ECN bits). The extra "layer" in tcp_ecn_check_ce() function just checks for ECN being enabled, that can be moved into tcp_ecn_field_check rather than having the __ variant. No functional changes. Signed-off-by: Ilpo Järvinen Signed-off-by: Chia-Yu Chang Reviewed-by: Eric Dumazet --- net/ipv4/tcp_input.c | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/net/ipv4/tcp_input.c b/net/ipv4/tcp_input.c index 771e075d457d..769048b559e5 100644 --- a/net/ipv4/tcp_input.c +++ b/net/ipv4/tcp_input.c @@ -365,10 +365,13 @@ static void tcp_ecn_withdraw_cwr(struct tcp_sock *tp) tp->ecn_flags &= ~TCP_ECN_QUEUE_CWR; } -static void __tcp_ecn_check_ce(struct sock *sk, const struct sk_buff *skb) +static void tcp_data_ecn_check(struct sock *sk, const struct sk_buff *skb) { struct tcp_sock *tp = tcp_sk(sk); + if (!(tcp_sk(sk)->ecn_flags & TCP_ECN_OK)) + return; + switch (TCP_SKB_CB(skb)->ip_dsfield & INET_ECN_MASK) { case INET_ECN_NOT_ECT: /* Funny extension: if ECT is not set on a segment, @@ -397,12 +400,6 @@ static void __tcp_ecn_check_ce(struct sock *sk, const struct sk_buff *skb) } } -static void tcp_ecn_check_ce(struct sock *sk, const struct sk_buff *skb) -{ - if (tcp_sk(sk)->ecn_flags & TCP_ECN_OK) - __tcp_ecn_check_ce(sk, skb); -} - static void tcp_ecn_rcv_synack(struct tcp_sock *tp, const struct tcphdr *th) { if ((tp->ecn_flags & TCP_ECN_OK) && (!th->ece || th->cwr)) @@ -874,7 +871,7 @@ static void tcp_event_data_recv(struct sock *sk, struct sk_buff *skb) icsk->icsk_ack.lrcvtime = now; tcp_save_lrcv_flowlabel(sk, skb); - tcp_ecn_check_ce(sk, skb); + tcp_data_ecn_check(sk, skb); if (skb->len >= 128) tcp_grow_window(sk, skb, true); @@ -5041,7 +5038,7 @@ static void tcp_data_queue_ofo(struct sock *sk, struct sk_buff *skb) bool fragstolen; tcp_save_lrcv_flowlabel(sk, skb); - tcp_ecn_check_ce(sk, skb); + tcp_data_ecn_check(sk, skb); if (unlikely(tcp_try_rmem_schedule(sk, skb, skb->truesize))) { NET_INC_STATS(sock_net(sk), LINUX_MIB_TCPOFODROP);