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 47F3545BF4; Sun, 27 Oct 2024 17:14:23 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 8E146402CD; Sun, 27 Oct 2024 17:14:22 +0100 (CET) Received: from NAM12-DM6-obe.outbound.protection.outlook.com (mail-dm6nam12on2057.outbound.protection.outlook.com [40.107.243.57]) by mails.dpdk.org (Postfix) with ESMTP id 1CB0640151; Sun, 27 Oct 2024 17:14:21 +0100 (CET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=UgLeogL9zfqhPoBbhS9IlyZ8B9tlKxuDT+DjM8NhUYuN/CpCUDq109gAiyVLCd5Fm5txUv4d5yowLL6OtEnTEyhl1HDZOiEuV0wpOipC5u8ITSPaeqmdRAgWMyGz2q5dZPQtkkRcnotsBQ5GMXnTyYRl3zjX8aZ1G/zd9lHGYj0wyMeNoJC6Uxxodr5x2XqGJBZTO7Ku1Zt6gGidcN3ku7Y4VngDYfiLBULtdNobIbkKKzqWIHhHdN9IGJKh79pmo9DrDU9a7j1XkkAFOQbJZXYp2Ys59umAN6zowkOjTCTRZfMcAMhsb4c907jhg3VKde8xXNDN1wO4JN5sdHHRJA== 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=qI8bZc6NFNtZqGn14mTlKt3TxR9xuY9vlGejdT926wI=; b=COJ65lstSUrrV4guMVIS+/uUvRgpxOW/VIrqhzXXPQxjdAY9THqrDPYFkQyx9OXsfP/Bd4SHKgEIzA6yrfb3EVWRdYd2wymjUHPMT3S52TlBgT/pK7H8PD9fv+Ill0i2E6Nsr2gj8Bu9eaaMURKC6YiM+xQ5B2gNc9InJf9HVPFInbFfSbgJS9gfOtwpZz0ELPrDk6x9rpwy0a7HD+jNSHDtkNpSHVNDVBU/qqW8Mahpj3F76zjSLV01ciUkEb1/Eq1sQeku0Ubf1xD2giAkYy+TXNReir6XedDCQ3/lOPJ7S18KUtfFZaL2rb2auDsj3AIDkeg4ao4hCdLFsaEBKA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 216.228.117.160) smtp.rcpttodomain=monjalon.net 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=qI8bZc6NFNtZqGn14mTlKt3TxR9xuY9vlGejdT926wI=; b=ne5AFFyl+GqqxTvQ16/GScbw8ieLKBnM9Wt1lUn4K58zKD9cCjzNZaMyeKf6Wh17L88blMnDfCvQfysEu/d2rPeqHRKRitKPDIiT00am3lEb1LOAUG1k/Q4N170shpZQVwnPt0e9amNftN39RGlQic9O4XWiMwb8IIgnkBa1biIXggGK1SHL2LUgegLiO0hPRp7TH9IMfnVN7RE9Qy/JtEfEWoO/mOelFnDO/SxpAFtbRRv40/zEpHRimXhsIGgObgzwy7YmNdRamWF5HVna4UJxe8PR85lZWvrH7OgenJ9mNvQP+rRIqP4dhcDK/qkUr7vUd17BmO31Lil+7cSflw== Received: from BYAPR01CA0069.prod.exchangelabs.com (2603:10b6:a03:94::46) by CH3PR12MB8353.namprd12.prod.outlook.com (2603:10b6:610:12c::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8093.24; Sun, 27 Oct 2024 16:14:17 +0000 Received: from SJ1PEPF00002313.namprd03.prod.outlook.com (2603:10b6:a03:94:cafe::21) by BYAPR01CA0069.outlook.office365.com (2603:10b6:a03:94::46) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7982.34 via Frontend Transport; Sun, 27 Oct 2024 16:14:18 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 216.228.117.160) 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.117.160 as permitted sender) receiver=protection.outlook.com; client-ip=216.228.117.160; helo=mail.nvidia.com; pr=C Received: from mail.nvidia.com (216.228.117.160) by SJ1PEPF00002313.mail.protection.outlook.com (10.167.242.167) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8093.14 via Frontend Transport; Sun, 27 Oct 2024 16:14:16 +0000 Received: from rnnvmail204.nvidia.com (10.129.68.6) by mail.nvidia.com (10.129.200.66) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1544.4; Sun, 27 Oct 2024 09:14:14 -0700 Received: from rnnvmail204.nvidia.com (10.129.68.6) by rnnvmail204.nvidia.com (10.129.68.6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1544.4; Sun, 27 Oct 2024 09:14:13 -0700 Received: from nvidia.com (10.127.8.12) by mail.nvidia.com (10.129.68.6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1544.4 via Frontend Transport; Sun, 27 Oct 2024 09:14:10 -0700 From: Itamar Gozlan To: , , , , Dariusz Sosnowski , "Viacheslav Ovsiienko" , Bing Zhao , Ori Kam , Matan Azrad , Erez Shitrit CC: , Subject: [v2] net/mlx5/hws: in NAT64 fix TC to TOS fields mapping Date: Sun, 27 Oct 2024 18:14:05 +0200 Message-ID: <20241027161406.142704-1-igozlan@nvidia.com> X-Mailer: git-send-email 2.39.3 In-Reply-To: <20241007083512.1332053-1-igozlan@nvidia.com/> References: <20241007083512.1332053-1-igozlan@nvidia.com/> 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: SJ1PEPF00002313:EE_|CH3PR12MB8353:EE_ X-MS-Office365-Filtering-Correlation-Id: 616db9b3-3d6a-4b1c-2b49-08dcf6a267c5 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|36860700013|376014|1800799024|921020; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?j9onHbg9VdDS4V6FCG2ZsRmG2VaxKL0HV3QUZszxj8H6s/G492Oa3KxYvcaN?= =?us-ascii?Q?wySg/mUqCpKyKflE2EiOavHIoQak5noq/zmcBmJiSxPO1kneT1Ssnf2h3fKI?= =?us-ascii?Q?JvuXauox8er32sEw8BADPt083FERIyIfhmor3+9tZm05oQFlB7wBL3cPOIDb?= =?us-ascii?Q?pyHrllK9I84UUd0mr1nbG1pnDr/j/VffZh4qYzQOzbqMAxw10CwAVFOtHcSY?= =?us-ascii?Q?FXbd48A9HnQK1CpLqRA/QN3puYo3LgPjqQxN16OwVrA2ggrJCswMoZhZlloQ?= =?us-ascii?Q?NdzPc6LqsiISUSUOwAut6aA66bCXQ0Lj+FbzdLzuPF70zAxedJsIDOhNLYJc?= =?us-ascii?Q?RcA3IApopOniIqNQveShCCOsYdg4+RBGQCAdo1HzMqVQdGxJm8k17NkDI6V6?= =?us-ascii?Q?swR4qUKisNW26T9NOfrUKOPkyVcHgCWF9fK7rdLr7ZaKV4jRVv7eEhm/NkjA?= =?us-ascii?Q?KOO8c0YjFa4eTWi3+kgKMeDUTeeDIdcoFN1FVMaHvIQ3+X4LR+Giy6p0uJZ8?= =?us-ascii?Q?8bBRhKanAPA0RjZAXY9X57foq+NX9ynUDpdt4QcekEUZ01yMshMukZ3UHc9J?= =?us-ascii?Q?ireI21MxIt73uV/L3ylNwI06f4Ro2jPW06e4Hv6ODYcgB5qS5bjUATpCUrFn?= =?us-ascii?Q?Hn6E9fzsBpirAUWDW6pQfYu01EOGs168Wvr6w51FrHgO5qLRMpB5fNrBadoF?= =?us-ascii?Q?qAzvmlUhN1i7r/ds6xOgiJObzvW00WMrlmVoaGv8tx4lpfU6FWDfSd1IgBD8?= =?us-ascii?Q?wTvDF/Kt+yPL4UN/+IqbmI1AgoqwG3xBKcZ1YvnvXhvv1jejx1pYee7DVaxr?= =?us-ascii?Q?UDsyV+2D5niSJ9sgeMrpwMkEX92dLeunVXSAbn3NSqoY/2cAjd+ffzXOORWy?= =?us-ascii?Q?sj6Ff1FEOzPvFpfktnhEajphCOa1ymaeQmYM+yazrpV63kYYeSr3JCpGf/sX?= =?us-ascii?Q?Jobc6hFQDXv678m0AV/ydEvMKN2XLM2jaihH9eFmOoT+MCFgS7Ng6rXA+Svz?= =?us-ascii?Q?XGqeqDQLpfaUSjT8H+Fe2DhsR6O57t19ejjugc7NvFHXW5CZwVmXzzjn3qu/?= =?us-ascii?Q?rpJbNXFF+qZSGOK+lGiLrHGs5KGrMqrrl685iDBePySjXUdyzVmCVoOOcnzp?= =?us-ascii?Q?YFfemqnU6Jcr1B6p0GvdvFOYEZchUJ93qVUbdGfLNINv0DGgZlgTSiTwtZii?= =?us-ascii?Q?CCt5Dd31XeuGUHH4ZHqVwhNeCcum+4glEHpCGl2/+0CZQlSY2VMk0akz8aYa?= =?us-ascii?Q?u1TMrwGt8eELgQrlc8piYZC3BQzxQ0kPcHTE+JKsb/ulkQxdZyQALr6k7HxJ?= =?us-ascii?Q?2AuxjaMkkg+QYpmTbQua6jK5p+vl4Ex2ecjvTHXjneJgh9p8kABDRZ4rf3RN?= =?us-ascii?Q?AKnL5TilgNxYi1innB2u8iSiOMWXVN24sgH1VE9OaU8PedYGv3Q/zz7yQDVf?= =?us-ascii?Q?0rWleGUUHR0=3D?= X-Forefront-Antispam-Report: CIP:216.228.117.160; CTRY:US; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:mail.nvidia.com; PTR:dc6edge1.nvidia.com; CAT:NONE; SFS:(13230040)(82310400026)(36860700013)(376014)(1800799024)(921020); DIR:OUT; SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Oct 2024 16:14:16.5565 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 616db9b3-3d6a-4b1c-2b49-08dcf6a267c5 X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a; Ip=[216.228.117.160]; Helo=[mail.nvidia.com] X-MS-Exchange-CrossTenant-AuthSource: SJ1PEPF00002313.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH3PR12MB8353 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org From: Hamdan Igbaria In IPv6 to IPv4 scenario when copying the TC field to the TOS[DSCP:6 bits, ECN: 2 bits] field the mapping of the fields get set wrongly, since the destination field of TOS is defined as 2 split fields of DSCP and ECN. In IPv4 to IPv6 we don't have this issue since both the source field of TOS and destination field of TC defined as 8 bits. Example to the problematic case of IPv6 to IPv4, TOS to TC mapping: TC=[abcdefgh], it should be mapped to TOS=[DSCP=abcdef, ECN=gh], but instead it was mapped as follow TOS=[DSCP=cdefgh, ECN=ab]. Fixes: 06d969a8c5b8 ("net/mlx5/hws: support NAT64 flow action") Cc: stable@dpdk.org Signed-off-by: Hamdan Igbaria Acked-by: Dariusz Sosnowski --- drivers/net/mlx5/hws/mlx5dr_action.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/drivers/net/mlx5/hws/mlx5dr_action.c b/drivers/net/mlx5/hws/mlx5dr_action.c index 3fceb96de2..3c1122a06f 100644 --- a/drivers/net/mlx5/hws/mlx5dr_action.c +++ b/drivers/net/mlx5/hws/mlx5dr_action.c @@ -617,7 +617,8 @@ mlx5dr_action_create_nat64_copy_back_state(struct mlx5dr_context *ctx, MLX5_SET(copy_action_in, action_ptr, src_field, attr->registers[MLX5DR_ACTION_NAT64_REG_CONTROL]); MLX5_SET(copy_action_in, action_ptr, dst_field, tos_field); - MLX5_SET(copy_action_in, action_ptr, src_offset, 24); + MLX5_SET(copy_action_in, action_ptr, src_offset, 24 + (ecn ? + MLX5DR_ACTION_NAT64_ECN_SIZE : 0)); MLX5_SET(copy_action_in, action_ptr, length, tos_size); action_ptr += MLX5DR_ACTION_DOUBLE_SIZE; @@ -629,7 +630,7 @@ mlx5dr_action_create_nat64_copy_back_state(struct mlx5dr_context *ctx, MLX5_SET(copy_action_in, action_ptr, src_field, attr->registers[MLX5DR_ACTION_NAT64_REG_CONTROL]); MLX5_SET(copy_action_in, action_ptr, dst_field, ecn); - MLX5_SET(copy_action_in, action_ptr, src_offset, 24 + tos_size); + MLX5_SET(copy_action_in, action_ptr, src_offset, 24); MLX5_SET(copy_action_in, action_ptr, length, MLX5DR_ACTION_NAT64_ECN_SIZE); action_ptr += MLX5DR_ACTION_DOUBLE_SIZE; } -- 2.39.3