From patchwork Thu Feb 2 16:02:58 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hamdan Igbaria X-Patchwork-Id: 122968 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 1D28541BAE; Thu, 2 Feb 2023 17:04:17 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 9F2BF43012; Thu, 2 Feb 2023 17:04:06 +0100 (CET) Received: from NAM11-DM6-obe.outbound.protection.outlook.com (mail-dm6nam11on2042.outbound.protection.outlook.com [40.107.223.42]) by mails.dpdk.org (Postfix) with ESMTP id 5FADD43010 for ; Thu, 2 Feb 2023 17:04:05 +0100 (CET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=RorfvWbqPJ8MPCmuXtNU/2cz6vIhOjKjMwS3+Z4i6zCqNW92JsoDoNYASO3Xt5RW2YAeTk/ESZKHXxVsJOeQRo66s21vfJxa5kFtfKr29ENbiItPc56bleALXO7Ggqcex7qAVZsJ3ELAjK3geI6Xc4LA2bqKlgdbSyqy91zXr/FX2mxwa9YeuHAZ9uQw9mn7Gdbt0JoITAAl2p7vdBAjZ/AejU2wFvPWZEgc1fo0fURDqS/LtCWzfuuWDCozLPt0YZTpyB1gBofriKrYOEuCoFTwu5+DAlWMw3dG45OBxCRQgJQDPEqBvVN/nob8qQxffHz9QlfljIin9/nOLbrKxA== 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=OVAQhvQa65DFLunJp5CEVP4em3vSYOpxihGTuf1yw7pGFUZltWxd81/pyAvacOXWbPW32Ytj0gwnIpadHib3JV2KEzeRZKHKFuMWeGT5Qej3cpBsjFV7JlYuRnkgaXcA0AYm9WR4MjgzFItSFhQ3GAtWKb23UsWBg1B9ojli9JBIn77sw/qQDVAwMugeA8pjRH9OWFSrWLmQ96HNcRYh2oi407QZ22n4WLL25F+8XjHcV/zk6CBMxjdtIT88hbfdSxcdWnrTXw2TPn53bEa5Bsx8Z2yA8wkqNY4vtmGEuJkw0BZVDf3PA+1IiKQg3Ql+aT7o3R0ljLeqgCGJicYHrg== 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=B6M4NteTWjhjb81X/2GgM03pUZQ59jdV7BZTteutIWGKK8YSHqH3BtIxeh08Z+x7zc8Y8hZOZA0YXRq/rHQKC40fh0hsZbX7Zsh4nu9GaBYxt8E6A3G6vfGXPGPk7k4sf937eS7qL1jw+BejHjv+KCZQJbXl60xAq5cwcGIFgTbkC+47bFZqiC6OqPUBVXN5dMt3xp3JV/uaaPV+KwK4r76aV81VvOyVO1XcagiGhXQ1TGfRZQcMg2DmIPxg0GQ2KvrrAcjO3l4llTOEGHALTf286+unNJaeyalWtuWod1KGkuXKGr4NXGGxZupMk0Q7aVWP/eGvdYjq5gI/W4gzfA== Received: from BN6PR17CA0031.namprd17.prod.outlook.com (2603:10b6:405:75::20) by CH2PR12MB4873.namprd12.prod.outlook.com (2603:10b6:610:63::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6064.27; Thu, 2 Feb 2023 16:04:03 +0000 Received: from BN8NAM11FT077.eop-nam11.prod.protection.outlook.com (2603:10b6:405:75:cafe::5c) by BN6PR17CA0031.outlook.office365.com (2603:10b6:405:75::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6064.27 via Frontend Transport; Thu, 2 Feb 2023 16:04:03 +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 BN8NAM11FT077.mail.protection.outlook.com (10.13.177.232) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6064.28 via Frontend Transport; Thu, 2 Feb 2023 16:04:03 +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, 2 Feb 2023 08:03:50 -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, 2 Feb 2023 08:03:47 -0800 From: Hamdan Igbaria To: , , , , Matan Azrad CC: , , Subject: [v2 4/5] net/mlx5/hws: support IP version matching for non relaxed Date: Thu, 2 Feb 2023 18:02:58 +0200 Message-ID: <20230202160259.834707-4-hamdani@nvidia.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20230202160259.834707-1-hamdani@nvidia.com> References: <20230126160309.584967-1-hamdani@nvidia.com> <20230202160259.834707-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: BN8NAM11FT077:EE_|CH2PR12MB4873:EE_ X-MS-Office365-Filtering-Correlation-Id: 4437d0be-1caf-40db-ba8e-08db05371ac1 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: CcbLG4575FpYqnqtXmU08fwdaNOiAp0+vfhxWMCTLqkx2TDYUoUmlP90jQKjSqbgT6dxCdV5zDpNMybXpEbLfpXvrrMkxY8gsjprKWx/ShrcA4hHjCAEMRUOEG0MBn48nBCte6MslHlgid5DnpzHSQ6iMiHM4GCB24njRq4SeY0I2wYn/K6Lps3WMYGJFkSHqpqcqirK0U8hfpCZ8nqXjpcgpsofrt+4oDqCVhJ66GPUAHkJgBP4MqhTxGzh2CPr244rHPc4+9W4amcynaHV5iQXFvjx0BMJJGGvZe2KZSNce4GEjJDYKLBPbr8c7IhdzhxJlzpTBeJ1CHqwEJCvglJa8copHoh9w+N2Gae3CuATFX8fRABNqJR2rhecpIhUvYCr0A+gTcfB5vGPP2JU9qfy2SHYIhLoUtUNH2ykneiBlLgvPbtVOQRRbfKwd+17e4VBjxfLm7rEJEJCQuy4yVkFjgFoSDq9mjjIp9hJb+CoEsJqEcmrtTUsfVkxUuF+cZl6w9hUn0JtKVo8Z30DK8+A4+Rm+pib3hDyAKiBieC5iLU/GXV4YooZcpCK0LHBub6tf8560+dOb7ouNSQrV3fiYVvNgIuhpoLHN3LUvD65vF5bnKFBjgHJKmffEWpG822PTksSd1r1ulHAFB79bUR+yc1QPkSRxpGq5iW2LvyBHv0QfUxDb65KVYn8GCjUSoP4S5QC5KF3b1EPCzb5vA== 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)(376002)(39860400002)(136003)(396003)(346002)(451199018)(46966006)(36840700001)(40470700004)(7636003)(1076003)(6666004)(107886003)(16526019)(6286002)(7696005)(2616005)(186003)(2906002)(26005)(82740400003)(36756003)(478600001)(336012)(47076005)(426003)(82310400005)(36860700001)(316002)(6636002)(70206006)(110136005)(70586007)(54906003)(86362001)(4326008)(40480700001)(8676002)(40460700003)(5660300002)(8936002)(356005)(55016003)(41300700001); DIR:OUT; SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Feb 2023 16:04:03.1270 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 4437d0be-1caf-40db-ba8e-08db05371ac1 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: BN8NAM11FT077.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH2PR12MB4873 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;