From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 5A03848B39 for ; Tue, 18 Nov 2025 07:58:04 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 42FEC40150; Tue, 18 Nov 2025 07:58:04 +0100 (CET) Received: from DM5PR21CU001.outbound.protection.outlook.com (mail-centralusazon11011071.outbound.protection.outlook.com [52.101.62.71]) by mails.dpdk.org (Postfix) with ESMTP id 08F1140150 for ; Tue, 18 Nov 2025 07:58:03 +0100 (CET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=IHFJDTBQKpzPiyQEBfz/VbZb/Dhbyi2iSmHQvxiJN2Cn24EDq2wWn9qLfi+Qlq5d+BrunOJpjldWksiKXqdkYNzld/GO8WNfHPUOhmt/twNtc9u0/Mn0/UwzCMWxg21vLysfGzT86QyCpUXH5xi/IXBwf+WfTEjPbdfzKEiIXQxhk9SMGhvZVb4e84PKrLRr5IM/U3hz5G6rJS14CSj+adcALUpyIrCN7pjm4biiZxy8Ven9/9Jp318Isd/vv8/obRHe/0uWy0AwFdKnhlklx/zc7Gl5exF/WqzuX9Je/yQgLqOwtlBqI8KCQ23jSHUxB+2y3/wil0b9+VjOyZrvEQ== 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=XtiyWNtBMzPrf+kNYmZhDMjktDkln6BaWE3XkpfCeo8=; b=Pyz0zcg63r9pnMKjfjvhb94a8kzWTNqv167mF7s0dV6Tq4QpKT7ofzgsiNF22Xg6Q+jmLVd0ONiCQKNXsliywkMXADASLGgziwm28TkNlpCmI4EJR0IjRvqKejFoH5BbSov348DsdP0i3LM234Jmk+bpDd2XQNhxIJJ/B+DDyh4hRpDUN5HLLQNZqhcKpd9E5wH0B2m6ruQhlrS1/YjcZXi1APgiFRVMCIrdOx+LoiLNWFGnHlzGerMkMF86ZcUbat8S7uBW6AfZt2AjrTmIcNjKVz9un8rJEpPWQTTYNtCc0BK/xQhq3N8izfhBLdtrC/Mk6v+gexR8nK89ipDL6A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 216.228.118.233) smtp.rcpttodomain=dpdk.org smtp.mailfrom=nvidia.com; dmarc=pass (p=reject sp=reject pct=100) action=none header.from=nvidia.com; dkim=none (message not signed); arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=XtiyWNtBMzPrf+kNYmZhDMjktDkln6BaWE3XkpfCeo8=; b=g/OmRluvEJvraeM6yoDbOj38/o7pB8178uEK8+lXU/sPJJRQihFPWgQOSIotjQeGxwG28si6yA3Ec5RPcGyM8U2e2LNc2HZ9x37cqInl1DdoXJFKFk+kQTXxelp7v7w0ZpzBQjDGHvX5Xxp60K2+1pwY0Tm2EGtoNA6+78OtZY2pOzXc218+82gmfXLUQmGZjgfHQRfj7L14dOxPMxVTM8HPY2OV82za/FdRrXAn3mJBsklQzIr8j7otyG3D96qt02qseWFkkqkexZxkeIK+8RhPlqEqOV81aEuXQk6aKK2suNn6lvOFDjVyU/GP672tZEHNwwG5XMdsCfgZyj3Gbg== Received: from SA1PR02CA0008.namprd02.prod.outlook.com (2603:10b6:806:2cf::13) by IA1PR12MB8189.namprd12.prod.outlook.com (2603:10b6:208:3f0::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9320.22; Tue, 18 Nov 2025 06:57:59 +0000 Received: from SA2PEPF00003F68.namprd04.prod.outlook.com (2603:10b6:806:2cf:cafe::67) by SA1PR02CA0008.outlook.office365.com (2603:10b6:806:2cf::13) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.9343.10 via Frontend Transport; Tue, 18 Nov 2025 06:57:58 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 216.228.118.233) smtp.mailfrom=nvidia.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=nvidia.com; Received-SPF: Pass (protection.outlook.com: domain of nvidia.com designates 216.228.118.233 as permitted sender) receiver=protection.outlook.com; client-ip=216.228.118.233; helo=mail.nvidia.com; pr=C Received: from mail.nvidia.com (216.228.118.233) by SA2PEPF00003F68.mail.protection.outlook.com (10.167.248.43) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9343.9 via Frontend Transport; Tue, 18 Nov 2025 06:57:58 +0000 Received: from drhqmail202.nvidia.com (10.126.190.181) by mail.nvidia.com (10.127.129.6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.20; Mon, 17 Nov 2025 22:57:46 -0800 Received: from drhqmail203.nvidia.com (10.126.190.182) by drhqmail202.nvidia.com (10.126.190.181) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.20; Mon, 17 Nov 2025 22:57:45 -0800 Received: from nvidia.com (10.127.8.14) by mail.nvidia.com (10.126.190.182) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.20 via Frontend Transport; Mon, 17 Nov 2025 22:57:43 -0800 From: Maayan Kashani To: CC: , , , Thomas Monjalon , Matan Azrad , Viacheslav Ovsiienko , Alexander Kozyrev Subject: [PATCH] [PATCH 22.11] net/mlx5: fix modify field action operation restriction Date: Tue, 18 Nov 2025 08:57:37 +0200 Message-ID: <20251118065738.16502-1-mkashani@nvidia.com> X-Mailer: git-send-email 2.21.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-NV-OnPremToCloud: ExternallySecured X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SA2PEPF00003F68:EE_|IA1PR12MB8189:EE_ X-MS-Office365-Filtering-Correlation-Id: bb19080f-5e42-4308-3d32-08de266fceb3 X-LD-Processed: 43083d15-7273-40c1-b7db-39efd9ccc17a,ExtAddr X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|82310400026|376014|1800799024|36860700013|7053199007; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?R8Y/BqxYP0ZglaCAL4EOuFjkKT9lW2kQScSLT6p+dr8NzhXMAM/QCjYRAhEU?= =?us-ascii?Q?oWp9dJrJL7YxW3NcSMdyeNG+v6hWtGiE+Q5EmVqNWSWJvpMW64rD+9aZ2SRV?= =?us-ascii?Q?xgNvZ2MBVTMWQ06yNj3Cz+eH9YzCEqXtLXpNagwAb9xwnbNTVzZsNRuiOfrv?= =?us-ascii?Q?Hm5hk0ucC3gY4VyZ+pQrEpOuzptX+S2nQBRR3W42Mb1yX8zdXcm5N8F8/vG2?= =?us-ascii?Q?diooohLC2i6YsNQMb2Ry2T/fqULxwEeccKM3OT4EbAgSJMCwBFTMUF7R3SXf?= =?us-ascii?Q?ZS+DZRjNKRK6FbX1hccP2oFnb3WsjYV3zdr9v1Q8qKBNtMxY0kBCdGvjRj8w?= =?us-ascii?Q?KxqWAJB1lBGAYzJRZtHvKUKSdRBkJZb2z0L6lJM/pgvpRR7PAYr7rh+xCvyz?= =?us-ascii?Q?Pan/KU1fJrZuJu4D8o2+rkMFzOs2LUgpRZHPB3/3CFk5Gy+Kk0WrtPQDBKUw?= =?us-ascii?Q?3VRFd4sJA3waG9SHDMFbBpeLE3+t5ftBA2OIEX7ApU02HMJYMzMGY8yk4SVn?= =?us-ascii?Q?ta4OIjRIA9rJfI/OnNlA65YgK/PSGENUb8od0tE/Z3iNsIE7U2Feq+gojGQm?= =?us-ascii?Q?7H8PeCW6sFIYyM+Rdz0DX6gAqAXiCHkcT3srxFEmwMXIxaBGhYzNAYLt0HTz?= =?us-ascii?Q?SJ1T6uN3vfoYLmBc7r4jVY9fXAJltYbRG/loOqyjx53jq6KYxHozFAJWvzHF?= =?us-ascii?Q?EC1jE1m+LhtUaYs0jnKSAkI0F7oGBoHvZxRRaBCfycokQaK5YePn3n/iPmn5?= =?us-ascii?Q?5JuB0TBXwINp9E3hqZPIxvH1UAghNayConsjid3My9w5q2Vd3sm5v+aTm9OK?= =?us-ascii?Q?VvfBRkjE+omSxqtxCSVicXdxA6TnrQGQU2lsgGAXomVQquWxPhKCjaP7Ve8n?= =?us-ascii?Q?f07RcTQXgMfWW7/Hp1P/XB6XhIAjKjWjUocjst5mjy2OFYdt7/et9DQ+xfyR?= =?us-ascii?Q?y0GjmN5862I+e+C7SiUy8EkFM+sddWkZvFo/4p178erep/EOUnbZWOcHVoTp?= =?us-ascii?Q?dnNAuTakBwAJtVrVPYsVZ+KXFe1QmabkjqvSjuSj+MQ3cRMTFHWZ6XYWGTbG?= =?us-ascii?Q?2q6Cmg7o7RP2tLIotnWjgMhw/HHqusmINQ/fOk32Nd/5XOZgwqAEYrxfgAIA?= =?us-ascii?Q?JWex5wel6wwySUU/LQzuyo2JPsamhEe7yEHy4gpTO9VQ1KvAifpqcN6Ww3gl?= =?us-ascii?Q?5xlPzyUWFPvJZhT07wNnzBUcmMF9aR5FnYBe1TosTqm9PdRJG88AOSwvzFWT?= =?us-ascii?Q?D3IPfqYmGgl7OfQbDhNsvSpHF79+OxVu5qT2MiNsXz91zZO1Wz2qR494VqXO?= =?us-ascii?Q?5uNcmjc0gwITe2SOLW2P/wiEnfTutq+7KjLXWs9/KMg3z85fr009xSf+W+e6?= =?us-ascii?Q?mxmPvEITHibyw0nTOKiywD/E13Ooyy2AQrYilvwRntZD3RiVICiMytvuRCm0?= =?us-ascii?Q?YAybgLoMkm046Q5d/e0OOZ+g/K5+Vr3kAetCxhfeBmlx2G9viB4smdUDP2vC?= =?us-ascii?Q?YFZTX4jvkffmnbob4hel10+HEfT+T25+X9V02Hw0yFe2+Vahl/etoWkzdKen?= =?us-ascii?Q?80zLENV90WXd1yXIrcM=3D?= X-Forefront-Antispam-Report: CIP:216.228.118.233; CTRY:US; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:mail.nvidia.com; PTR:dc7edge2.nvidia.com; CAT:NONE; SFS:(13230040)(82310400026)(376014)(1800799024)(36860700013)(7053199007); DIR:OUT; SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Nov 2025 06:57:58.3015 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: bb19080f-5e42-4308-3d32-08de266fceb3 X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a; Ip=[216.228.118.233]; Helo=[mail.nvidia.com] X-MS-Exchange-CrossTenant-AuthSource: SA2PEPF00003F68.namprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA1PR12MB8189 X-BeenThere: stable@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: patches for DPDK stable branches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: stable-bounces@dpdk.org Update DV flow engine modify field validation: - Reject 'add' and 'sub' operations when source field is not VALUE or POINTER in DV flow engine. Update documentation to clarify operation support: - 'set' operation is supported in all modes - 'add' operation with VALUE/POINTER source fields is supported in DV/HWS mode. - Specify relevant HW supporting packet header as 'src' field. - List supported 'dst' fields. Fixes: 641dbe4fb053 ("net/mlx5: support modify field flow action") Cc: stable@dpdk.org Signed-off-by: Maayan Kashani Acked-by: Dariusz Sosnowski --- .mailmap | 1 + doc/guides/nics/mlx5.rst | 21 ++++++++++++++++++++- drivers/net/mlx5/mlx5_flow_dv.c | 7 +++++++ 3 files changed, 28 insertions(+), 1 deletion(-) diff --git a/.mailmap b/.mailmap index f53fdf0d859..7cf02ea05a1 100644 --- a/.mailmap +++ b/.mailmap @@ -820,6 +820,7 @@ Luke Gorrie Lunyuan Cui Lu Qiuwen Lyn M +Maayan Kashani Maciej Bielski Maciej Czekaj Maciej Fijalkowski diff --git a/doc/guides/nics/mlx5.rst b/doc/guides/nics/mlx5.rst index d2f741a4726..38006f5cc8d 100644 --- a/doc/guides/nics/mlx5.rst +++ b/doc/guides/nics/mlx5.rst @@ -466,7 +466,26 @@ Limitations - Modify Field flow: - - Supports the 'set' and 'add' operations for ``RTE_FLOW_ACTION_TYPE_MODIFY_FIELD`` action. + - Supports the 'set' operation for ``RTE_FLOW_ACTION_TYPE_MODIFY_FIELD`` in all flow engines. + - Supports the 'add' operation with 'src' field of type + ``RTE_FLOW_FIELD_VALUE`` or ``RTE_FLOW_FIELD_POINTER`` with both HW steering (``dv_flow_en=2``) + and DV flow engine (``dv_flow_en=1``). + - HW steering flow engine, starting with ConnectX-7 and BlueField-3, + supports packet header fields in 'src' field. + 'dst' field can be any of the following: + + - ``RTE_FLOW_FIELD_IPV4_TTL`` + - ``RTE_FLOW_FIELD_IPV6_HOPLIMIT`` + - ``RTE_FLOW_FIELD_TCP_SEQ_NUM`` + - ``RTE_FLOW_FIELD_TCP_ACK_NUM`` + - ``RTE_FLOW_FIELD_TAG`` + - ``RTE_FLOW_FIELD_META`` + - ``RTE_FLOW_FIELD_FLEX_ITEM`` + - ``RTE_FLOW_FIELD_TCP_DATA_OFFSET`` + - ``RTE_FLOW_FIELD_IPV4_IHL`` + - ``RTE_FLOW_FIELD_IPV4_TOTAL_LEN`` + - ``RTE_FLOW_FIELD_IPV6_PAYLOAD_LEN`` + - Modification of an arbitrary place in a packet via the special ``RTE_FLOW_FIELD_START`` Field ID is not supported. - Modification of the 802.1Q Tag, VXLAN Network or GENEVE Network ID's is not supported. - Encapsulation levels are not supported, can modify outermost header fields only. diff --git a/drivers/net/mlx5/mlx5_flow_dv.c b/drivers/net/mlx5/mlx5_flow_dv.c index f3a76f9e939..67c1f0b2aff 100644 --- a/drivers/net/mlx5/mlx5_flow_dv.c +++ b/drivers/net/mlx5/mlx5_flow_dv.c @@ -5084,6 +5084,13 @@ flow_dv_validate_action_modify_field(struct rte_eth_dev *dev, } if (action_modify_field->src.field != RTE_FLOW_FIELD_VALUE && action_modify_field->src.field != RTE_FLOW_FIELD_POINTER) { + if (action_modify_field->operation != RTE_FLOW_MODIFY_SET) + return rte_flow_error_set(error, ENOTSUP, + RTE_FLOW_ERROR_TYPE_ACTION_CONF, + &action_modify_field->operation, + "modify field action type add is not" + " supported when src field type is" + " not value/pointer"); if (root) return rte_flow_error_set(error, ENOTSUP, RTE_FLOW_ERROR_TYPE_ACTION, action, -- 2.21.0