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 4336944173; Thu, 6 Jun 2024 12:23:57 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 1DB2A42E27; Thu, 6 Jun 2024 12:23:51 +0200 (CEST) Received: from NAM12-BN8-obe.outbound.protection.outlook.com (mail-bn8nam12on2077.outbound.protection.outlook.com [40.107.237.77]) by mails.dpdk.org (Postfix) with ESMTP id 38D5942E45 for ; Thu, 6 Jun 2024 12:23:49 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=oQyHPwTKU2bsCOByR+4U+29BLO+8HtKEzJ1tPalhUITT+MsYtMx2xNUhjl5I3X4uRNOeYlhhLh9PahO3c4rzxg5fwDLBgETP5HfsMzRFNQTw8+QdeZYheKqtV+cf8hU3VjwjKPqgxECyOCkMA3U4+B2kQfPYjAlLsKPmte6qqR4+XKX4srMJnRIF6as68M0qjcZMNIhlVSpvMZ6aKV+aO1tOBM1qFOy0DNCvWgC+6Vu0GDR2LkGmK5Srlxq9H05dOx2Ro0CDixYBl6F2sNXyz6ou/nPSGzOrIYfgJVhbCI5ZUELYrFUMz1Z+eO2khTUu9TzAVkYfSCjK6azH2KdL6Q== 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=SjAeJF9d8l1mbXZqUvC6cH4LaZ/NJtKp6gfcXV+tTKE=; b=L0UmAFVZeeId6Yd8Fbkk1d61LCgE92O3pMcMRsYwFjOZ+a/Ihbf1xVuiqAhG+/ZWkOfl3ToQghjLY4Becf6QUeXjHJi3GvmIMYi02uG9iXaIpD+L6CVgLuyfgp2ijLlQcCHF0t0PWm3+UChcVpw21QvAmbL47hMfIJB/V/0wJUMk33kHrWY7TcTOAkwTXdL9pXNRIIIPeUo9Hgb0jU4JDZWtG+3tCQ1UipnHIEPzstSmaCvhoHVkVzZoHRnTGMe6rCzbg/Cz/Ix2fxaBcoyU2DsG318i8eCN0+nBwaZdBnNuikHhaXxHGr2tD32gynVuNMW1uemwiHUunM0ppGHeZQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 216.228.117.161) 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=SjAeJF9d8l1mbXZqUvC6cH4LaZ/NJtKp6gfcXV+tTKE=; b=BNjPbphDdko3+kbzB/dZ/ulGZZmzRWTu5hZUbM7fHRzP7Ntf77dyHd0g2vQkIoNhpZCjD7YKMz1vSc4laUl+XUpsJf7JAkDgpAvsxRQWMVu4tcWkyIaTenFK3HuzPOBH9TBOVaBgguU07t0SrcLF5EOuOYIPju7w8iB6Eb8joGEtsanEIjVyRthhwQoXLPdUOHQM891PnOFp3dyUvcsh7av3Yic4aFkvfEHDQV48ttUL2VC8PsGo6nYwZTktHLQSHIbBkNg6HgfCZEeDK5SoWAdOxL61EsdB2XEQQzM60Ovb88XcQnR11P0f54aTyEjroOOPcNIcY8glw7IAu4JVBQ== Received: from SJ0PR05CA0181.namprd05.prod.outlook.com (2603:10b6:a03:330::6) by PH8PR12MB6673.namprd12.prod.outlook.com (2603:10b6:510:1c0::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7611.30; Thu, 6 Jun 2024 10:23:44 +0000 Received: from CO1PEPF000044F0.namprd05.prod.outlook.com (2603:10b6:a03:330:cafe::5) by SJ0PR05CA0181.outlook.office365.com (2603:10b6:a03:330::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7677.6 via Frontend Transport; Thu, 6 Jun 2024 10:23:44 +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 CO1PEPF000044F0.mail.protection.outlook.com (10.167.241.70) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7633.15 via Frontend Transport; Thu, 6 Jun 2024 10:23:44 +0000 Received: from rnnvmail204.nvidia.com (10.129.68.6) 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.1544.4; Thu, 6 Jun 2024 03:23:34 -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; Thu, 6 Jun 2024 03:23:33 -0700 Received: from nvidia.com (10.127.8.14) 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; Thu, 6 Jun 2024 03:23:31 -0700 From: Maayan Kashani To: CC: , , , "Bing Zhao" , Viacheslav Ovsiienko , "Ori Kam" , Suanming Mou , Matan Azrad Subject: [PATCH v4 02/11] net/mlx5: add dummy last action Date: Thu, 6 Jun 2024 13:23:07 +0300 Message-ID: <20240606102317.172553-3-mkashani@nvidia.com> X-Mailer: git-send-email 2.21.0 In-Reply-To: <20240606102317.172553-1-mkashani@nvidia.com> References: <20240603104850.9935-1-mkashani@nvidia.com> <20240606102317.172553-1-mkashani@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: CO1PEPF000044F0:EE_|PH8PR12MB6673:EE_ X-MS-Office365-Filtering-Correlation-Id: 053abd03-7e11-4e00-5e4d-08dc8612be70 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230031|1800799015|82310400017|36860700004|376005; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?gqZmEFSBb/ORSmp8VshkMOXIssYWUan/Q35Ui2tJ4VLlVOFqSM5yrWOLoPiS?= =?us-ascii?Q?6I+5/WyNBeO2t/bQQBZNmbPDiIFXTeWj0KX/Rj4CruqAY6R7/iW9NWWPzVcn?= =?us-ascii?Q?ND+gPScpywO7As6qODqsahAuP0jOGj/NBKtvpgpw5rMWKZQ+x39XEJ4ho2hm?= =?us-ascii?Q?W/gyqj3pMZrpEKffgSKs1KOHfp4GJsO5vzVFCbwyX1O7+YXoJ+oN0UGW3l6u?= =?us-ascii?Q?MzJJ7fdeQ09eSzMm6/0b/V29bDQQBK2gDVj8jw9w7bTAstkSLYlMACuG630/?= =?us-ascii?Q?6GYFSwl2Cfun7fyx7RvOn52aHqvG20idd4GWG0khCULaxuGHuBK/jx6fsycv?= =?us-ascii?Q?7ev6g937yFL9QZY8+rCCXQU9X9veH9hIN7I2TEily2oLUecw7T4eaNK1yEWz?= =?us-ascii?Q?1qYntoSK8wExj/8Hzgg5BOGZEF9inl+XUcdilyx0c05hxNUMudNfTm5/n8yH?= =?us-ascii?Q?fiiZ1FrmBBehGw9lgp+lL5S4iep5OYW0z2oGemxm+zsPviQqmKEmcIOIITN9?= =?us-ascii?Q?qRDwYNcd+c4lI+eGnvsJksjdO7+GTzIjM0tSMnNfKbbBlyIO7u8cDQUxW6dg?= =?us-ascii?Q?zwAe3PVTvNWormlRSfTCnmdO9N6XLuThBZSBzi2w5ZzH8vJiLdzyYiE3nQhY?= =?us-ascii?Q?gyYSxIiCKgDyOwvN08+BGNnJEDUv3r6975NAKbvl6MeSDzTVWrRb5z3yCV5M?= =?us-ascii?Q?+5ZXxF2bSTLfjnleUbMvcRw4FhcHx+sea2Wv4OD8PzGww09CpefLNtDcwNcK?= =?us-ascii?Q?G3nB6PGDKL3sbNoC77dGo1/ONBpj6nYmT9C2fVDaTEVT92+b3VFgfEnOqxDf?= =?us-ascii?Q?4TPuI6AFwlfgKrTXvUX+tehVyzWxf0DGCB37A+n/chu1hlOS2gzbYIe3RmOP?= =?us-ascii?Q?sgDqtpcIJoVZAN9bTNDkOY3T4udlvrkX7JbXF1vBDYJlNhpnH2kQBiamIaaA?= =?us-ascii?Q?FkMOpo2TbT8ZthmqJlHEOEJyrZGKSdUtJphw0oG1T909QYOqQYb1Zcpxq6Bz?= =?us-ascii?Q?nW1J3MFRvgGfqCEYOv9nUu6V9qNSdWNW12T/H+bDHvJCkFAI6xXCvkLSc3qj?= =?us-ascii?Q?BYOODOevC1DnCSVl03XBLmQCQdLubWTwFqfzG/Tq2qtRJmwHpJNDgV14Lqep?= =?us-ascii?Q?LEyo/RzNu0AIsHYfWqjLO8z150PnIcVy2S4aNsoWPKUh5kANqKK+gzSvo8vj?= =?us-ascii?Q?93E8HLHzfKdflAmPTJMQQzKWnOE1+LBLHY+B88p8Sxj+L/aNddqvp7gVeFyi?= =?us-ascii?Q?l7GUymcQrJngcowkre+EMHMj2xY3OwBtf5bK23laBs0EH1SLAIue6ji4xhw3?= =?us-ascii?Q?hbvB/ftXwFT0dCmjSRhf+FO72O9QNNx1MOBw8//0ivD+NCL9hf8E95HfUa8R?= =?us-ascii?Q?L23orgTs72pdROfJy8cc1Vw4ibEzz8dCocQoF0jMUV7kg8J9kg=3D=3D?= 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:(13230031)(1800799015)(82310400017)(36860700004)(376005); DIR:OUT; SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Jun 2024 10:23:44.1398 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 053abd03-7e11-4e00-5e4d-08dc8612be70 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: CO1PEPF000044F0.namprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH8PR12MB6673 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: Bing Zhao The RTE_FLOW_ACTION_TYPE_END action needs to be translated into the MLX5DR_ACTION_TYP_LAST for the future usage. It is only needed in the hardware steering backward compatible API. Signed-off-by: Bing Zhao Acked-by: Dariusz Sosnowski --- drivers/net/mlx5/mlx5.h | 1 + drivers/net/mlx5/mlx5_flow_hw.c | 19 +++++++++++++++++++ 2 files changed, 20 insertions(+) diff --git a/drivers/net/mlx5/mlx5.h b/drivers/net/mlx5/mlx5.h index 92ad33d486..0d30e7ab36 100644 --- a/drivers/net/mlx5/mlx5.h +++ b/drivers/net/mlx5/mlx5.h @@ -1509,6 +1509,7 @@ struct mlx5_dev_ctx_shared { /* Direct Rules tables for FDB, NIC TX+RX */ void *dr_drop_action; /* Pointer to DR drop action, any domain. */ void *pop_vlan_action; /* Pointer to DR pop VLAN action. */ + void *hw_dummy_last; /* Pointer to the DR dummy end action, any domain. */ #if defined(HAVE_IBV_FLOW_DV_SUPPORT) || !defined(HAVE_INFINIBAND_VERBS_H) struct mlx5_send_to_kernel_action send_to_kernel_action[MLX5DR_TABLE_TYPE_MAX]; #endif diff --git a/drivers/net/mlx5/mlx5_flow_hw.c b/drivers/net/mlx5/mlx5_flow_hw.c index efd2141913..015622f3bf 100644 --- a/drivers/net/mlx5/mlx5_flow_hw.c +++ b/drivers/net/mlx5/mlx5_flow_hw.c @@ -10639,6 +10639,17 @@ flow_hw_configure(struct rte_eth_dev *dev, if (ret) goto err; } + /* + * All domains will use the same dummy action, only used in the backward + * compatible API. Initialize it for only once. No order dependency. + */ + if (!priv->sh->hw_dummy_last) { + priv->sh->hw_dummy_last = mlx5dr_action_create_last(priv->dr_ctx, + MLX5DR_ACTION_FLAG_HWS_RX); + if (!priv->sh->hw_dummy_last) + /* Do not overwrite the rte_errno. */ + goto err; + } if (!priv->shared_host) flow_hw_create_send_to_kernel_actions(priv); if (port_attr->nb_conn_tracks || (host_priv && host_priv->hws_ctpool)) { @@ -10717,6 +10728,10 @@ flow_hw_configure(struct rte_eth_dev *dev, flow_hw_ct_mng_destroy(dev, priv->ct_mng); priv->ct_mng = NULL; } + if (priv->sh->hw_dummy_last) { + mlx5dr_action_destroy(priv->sh->hw_dummy_last); + priv->sh->hw_dummy_last = NULL; + } flow_hw_destroy_send_to_kernel_action(priv); flow_hw_cleanup_ctrl_fdb_tables(dev); flow_hw_free_vport_actions(priv); @@ -10832,6 +10847,10 @@ flow_hw_resource_release(struct rte_eth_dev *dev) mlx5dr_action_destroy(priv->hw_def_miss); flow_hw_destroy_nat64_actions(priv); flow_hw_destroy_vlan(dev); + if (priv->sh->hw_dummy_last) { + mlx5dr_action_destroy(priv->sh->hw_dummy_last); + priv->sh->hw_dummy_last = NULL; + } flow_hw_destroy_send_to_kernel_action(priv); flow_hw_free_vport_actions(priv); if (priv->acts_ipool) { -- 2.21.0