From patchwork Thu Jan 26 16:03:08 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hamdan Igbaria X-Patchwork-Id: 122570 X-Patchwork-Delegate: rasland@nvidia.com Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id E7FF742493; Thu, 26 Jan 2023 17:04:42 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 27B4542D50; Thu, 26 Jan 2023 17:04:35 +0100 (CET) Received: from NAM10-MW2-obe.outbound.protection.outlook.com (mail-mw2nam10on2067.outbound.protection.outlook.com [40.107.94.67]) by mails.dpdk.org (Postfix) with ESMTP id A6E6A410DD for ; Thu, 26 Jan 2023 17:04:34 +0100 (CET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=HXgU1RON5lykuLwyVq2cV4c2m7mrNnvcbFuqW2luXL6SCWCh2lfa1AKC8bN5mbJHOeCAOKTzwejw4Vj8PwVWjZIPHaFPJTauZca1M5XrSc5hNbFYaKpQjvVXSo2MqPvHuCWKCs7yOQJrOxCOnod011jowcA83FrC6ts8REDNwNuwK9/7KzrjqCfH5dbV/IoS5pPtM/xGulyT4S5yrBfYt6iSe/cXSM5MXasnps6YgO22RWsxzzG9FWKGNAWOrV0rRKZWc2Mh4uhwgXkLjcP0Fi3/lW5ZMjo07POS9GkVUrzbqxQxcoS7OTL3DY8Gem6buwszFDjzllWVJdOHIAAz/w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=E0z0rZEq1xJw3WFpT4DoLpqQ3pz9janY4jXC3oaqX98=; b=X6lvZqHRLaTzK2LMgzl+CIGEboNNxCZlhL7Ow6yv8ixscWiRyBKPULG3qKwbZCnWKG8AvAZL4TF+BBtWUvyQ694Bj8yeKveEOn0Gc69mZPtPbdEEnfgPh3nsOtb1pQEXYOKWpGRQvgwzM1DQvqOhB9NXx2hqLKQMvIYfvga9RpLmVn0Lfoa4+qayChZVtUH7rpM3DEsqzKYcSvS5tEwWtqpESxP56DKfc56fy5h9wiLVPQEkO/d55rYGUjZDK2o4u1yUCnADUmDs9K2M/OGO5BBmjbAiiYco5w5tvIzC9dmCwNoljfDztlgA+e/VA/y4ikV3B87/pnFQe/SyMTxGXQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 216.228.117.161) 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 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=E0z0rZEq1xJw3WFpT4DoLpqQ3pz9janY4jXC3oaqX98=; b=h/ojIRqR6r1gz9IPvTKvvL0eafZBpOzglszsjB+yYwk/hNra9I+UDHVw222Q3dutLljBJymgsKn/g+PjGT3Nsm8fvVRKo5PV3HM4CKCkt9iEg1gH/1irzbiBQ35UcvaLQo5yigJSyN8/4qqH50+ZRwDNlAt1MlBI43c1b+69GV5CBKBmku8HvTb1UBDrcO/rEcPoToXBObuXDzTFa7LvJ385K0c3siyQ7YsXqjDTnwio6EDRqV7YJB5B7nN0pI/ZwjsUSK4Ckv2hTg6sW9O9uVLWj8d3rBtvtpcsV8MeI+ZrOMOUHdsGLvt/5747IxUwCK6waiWwMCQoKuEM/q2Thg== Received: from MW4PR04CA0179.namprd04.prod.outlook.com (2603:10b6:303:85::34) by CY8PR12MB7729.namprd12.prod.outlook.com (2603:10b6:930:84::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6043.21; Thu, 26 Jan 2023 16:04:33 +0000 Received: from CO1NAM11FT008.eop-nam11.prod.protection.outlook.com (2603:10b6:303:85:cafe::ec) by MW4PR04CA0179.outlook.office365.com (2603:10b6:303:85::34) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6002.33 via Frontend Transport; Thu, 26 Jan 2023 16:04:33 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 216.228.117.161) 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.161 as permitted sender) receiver=protection.outlook.com; client-ip=216.228.117.161; helo=mail.nvidia.com; pr=C Received: from mail.nvidia.com (216.228.117.161) by CO1NAM11FT008.mail.protection.outlook.com (10.13.175.191) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6043.22 via Frontend Transport; Thu, 26 Jan 2023 16:04:32 +0000 Received: from rnnvmail201.nvidia.com (10.129.68.8) by mail.nvidia.com (10.129.200.67) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.36; Thu, 26 Jan 2023 08:04:22 -0800 Received: from nvidia.com (10.126.230.37) by rnnvmail201.nvidia.com (10.129.68.8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.36; Thu, 26 Jan 2023 08:04:19 -0800 From: Hamdan Igbaria To: , , , , Matan Azrad CC: , , Subject: [PATCH 4/5] net/mlx5/hws: support IP version matching for non relaxed Date: Thu, 26 Jan 2023 18:03:08 +0200 Message-ID: <20230126160309.584967-4-hamdani@nvidia.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20230126160309.584967-1-hamdani@nvidia.com> References: <20230126160309.584967-1-hamdani@nvidia.com> MIME-Version: 1.0 X-Originating-IP: [10.126.230.37] X-ClientProxiedBy: rnnvmail201.nvidia.com (10.129.68.8) To rnnvmail201.nvidia.com (10.129.68.8) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT008:EE_|CY8PR12MB7729:EE_ X-MS-Office365-Filtering-Correlation-Id: 96c6bb88-87a0-46ba-c9bd-08daffb70374 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; X-Microsoft-Antispam-Message-Info: 7bOwjtGAi5u4sgqeAZlCHDzVSbOh94I1DtdnAGUJzZsSOtJOUtPuMQIfKDrCiDg3Uu1NhjJMBbsL7xjY9led5SUDCHcdRlK49UGEEqujVHWiyrIZguc8CIWox+pq7GePhdDflUziTvCI8wVTB43ERDur/GbUTUIwegrRRHCjAxKZcLKchydAC/8EKT6/nY+VmNpGiwcPFYjXlpMDcnqlBdZtZYZs/Tywx9xSY4H93fnlUdUVSVToPSrMnvn4ibX0DubquKlEphTy/siD3TutmcrgsfZQr1DOe/ok9h6eck3iPXi0oxqTWHE9LWzW4fl0ypYvrMY70uMoSPjlYlSGRWzCFz6AsJ7ruiCybldDtdMcyjmTxp/DLfYv1/2+4+uxlJgRMZPZ8n58IWyeXPjuz2GHaUhIm3BlbdTuihZj++6PFEskYw6kor/yU0B330rNa+FM1kivYaRtNzDu0QEM2IvPvKvmhfcjKXgN8TrGH/PQId/EcemoWvM/VDMz8kF4Q80+/B5x9o9gHEgrTrJVYyk36tURAH3iBVwkmtUsy8xsIfS/vJ7W8OC78cCp7WdHU3Lc9B456t3dmVbPMXiyBlv3rDmHmrDpyVViLtpnX7VADk2VRB0y6VkWpcnbXg97hS213LGvrCc2HTqblqXqNRJYeh0Kr78EpbzujBzO8MKit3vszZPle4YZBnaqiLaG7rSeSh0h+aXwzMX7Xi+MVw== X-Forefront-Antispam-Report: CIP:216.228.117.161; CTRY:US; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:mail.nvidia.com; PTR:dc6edge2.nvidia.com; CAT:NONE; SFS:(13230025)(4636009)(396003)(346002)(39860400002)(136003)(376002)(451199018)(46966006)(36840700001)(40470700004)(7696005)(70586007)(86362001)(186003)(82310400005)(6286002)(6666004)(478600001)(26005)(107886003)(36860700001)(40460700003)(6636002)(316002)(16526019)(110136005)(54906003)(40480700001)(70206006)(4326008)(55016003)(8676002)(356005)(426003)(2616005)(41300700001)(36756003)(336012)(47076005)(8936002)(1076003)(5660300002)(82740400003)(7636003)(2906002); DIR:OUT; SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Jan 2023 16:04:32.6867 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 96c6bb88-87a0-46ba-c9bd-08daffb70374 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.161]; Helo=[mail.nvidia.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT008.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY8PR12MB7729 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 Enable matching on IP version explicitly for non relaxed mode. This will add support for the user cases where he needs to match on ip version explicitly, for such case to have outer ipv6 and inner ipv4 packets, etc. Signed-off-by: Hamdan Igbaria --- drivers/net/mlx5/hws/mlx5dr_definer.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/drivers/net/mlx5/hws/mlx5dr_definer.c b/drivers/net/mlx5/hws/mlx5dr_definer.c index 6b98eb8c96..79f4f2667f 100644 --- a/drivers/net/mlx5/hws/mlx5dr_definer.c +++ b/drivers/net/mlx5/hws/mlx5dr_definer.c @@ -539,6 +539,14 @@ mlx5dr_definer_conv_item_ipv4(struct mlx5dr_definer_conv_data *cd, return rte_errno; } + if (m->version) { + fc = &cd->fc[DR_CALC_FNAME(IP_VERSION, inner)]; + fc->item_idx = item_idx; + fc->tag_set = &mlx5dr_definer_ipv4_version_set; + fc->tag_mask_set = &mlx5dr_definer_ones_set; + DR_CALC_SET(fc, eth_l2, l3_type, inner); + } + if (m->fragment_offset) { fc = &cd->fc[DR_CALC_FNAME(IP_FRAG, inner)]; fc->item_idx = item_idx; @@ -628,6 +636,14 @@ mlx5dr_definer_conv_item_ipv6(struct mlx5dr_definer_conv_data *cd, DR_CALC_SET(fc, eth_l4, ip_fragmented, inner); } + if (DR_GET(header_ipv6_vtc, &m->hdr.vtc_flow, version)) { + fc = &cd->fc[DR_CALC_FNAME(IP_VERSION, inner)]; + fc->item_idx = item_idx; + fc->tag_set = &mlx5dr_definer_ipv6_version_set; + fc->tag_mask_set = &mlx5dr_definer_ones_set; + DR_CALC_SET(fc, eth_l2, l3_type, inner); + } + if (DR_GET(header_ipv6_vtc, &m->hdr.vtc_flow, tos)) { fc = &cd->fc[DR_CALC_FNAME(IP_TOS, inner)]; fc->item_idx = item_idx;