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 57EAE44145; Mon, 3 Jun 2024 12:49:21 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id E905D42DE6; Mon, 3 Jun 2024 12:49:20 +0200 (CEST) Received: from NAM11-DM6-obe.outbound.protection.outlook.com (mail-dm6nam11on2056.outbound.protection.outlook.com [40.107.223.56]) by mails.dpdk.org (Postfix) with ESMTP id 21ADB40647 for ; Mon, 3 Jun 2024 12:49:19 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=aYIPLBhCpI+IOJeDPgpIvlIU/1sd6nlrkdl6PZTyPPOK0SPoFuGIAUqox/4Wq7n0FXFE0iRq1fDFC38H+ThSzUT4Yz2ywWQR9ykEz/YB2jnYBKeu8YYYbzjj43NBfW+YJ2Z3A3Bv9K3h7Hj+DwGLU6sKW6jt7C0InHT1OX6QwfnoiXVvp91Vwnn2OLHjFAgjQHIqvQDYVCX2tyHsB6wXeJUKPwYagV24DRDUdQwd7cGEwEFI7R2HlJbJh2fjlE8AU75Y8bcFT1lMy8vN2S1VMEmW20GhCM4X+lL81j2omDNx/qaQ8cpPy0Dl6nUhvorntPrtZsSToRaz8EkoxomVLA== 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=YpCSOZPVG1USBmj9oqiCWMYhRTSw3M4u605R3v7ObAg=; b=A4pskmiR08hI9qfvAX9ux+9H7SqkPuWCjqFSQad2R663PSwdl5h1zoaeqzGcDSAz22bUajOg32Nm0x11UKO5IapfnbrN4TOW3T75zI5kpEg3n2s1wrJrHs48BcTv83WiV7QOk+cRX2bzKOWi08jAOr/rK881k2K3r4E5zj0f33h697VxFgDBnhUAcYb/OIpiq+GmcVxEqI/yTRbmY9a9Ceb9hlHPWcCs80dT4QnR3NtO9qoVApKkdbeH2mqE4TFDq+GzE4JU0FFj0bdH4pR8/W+ASJzNShAYEXdVkK/Chj/sn1jxPY7IldV8SpW6QZwwWzizXAuGuPsFt2ExHo4A8Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 216.228.117.160) 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=YpCSOZPVG1USBmj9oqiCWMYhRTSw3M4u605R3v7ObAg=; b=b/gO2DENHFDoHzi8Ij2mvWDg5x737cf/dxKdCzplH9k16OmvC27yrAbSPIgtV+AXqlQmt9DJ4yvmGtXrMFtWm4v0ibHjZfqhEVtDGfA1Q85e/lazQekEi4Oe2VR1eTA/3kGPEXDjrQZ+2ntjKxSf0hA3QSt9DbYwdqU2KwTb57rou4I+enHQhIR1eDZqzzN9EffZqsWm5N4Hhcky5am8FeYomxu7p5sZcFGF8c4bM/yc6tDAjvGcV0WF/gdi9BLVLhnh7fLmkyKNTca+9LYFzAMOe/mPKIrV+IYgd74Jla118MlEngxuxzcCt7oYnARPLmQdhdqDhw4ySyJgFZ7SZQ== Received: from PH8PR21CA0021.namprd21.prod.outlook.com (2603:10b6:510:2ce::15) by SN7PR12MB6744.namprd12.prod.outlook.com (2603:10b6:806:26c::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7633.17; Mon, 3 Jun 2024 10:49:16 +0000 Received: from SN1PEPF000397B2.namprd05.prod.outlook.com (2603:10b6:510:2ce:cafe::5e) by PH8PR21CA0021.outlook.office365.com (2603:10b6:510:2ce::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7677.5 via Frontend Transport; Mon, 3 Jun 2024 10:49:16 +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 SN1PEPF000397B2.mail.protection.outlook.com (10.167.248.56) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7633.15 via Frontend Transport; Mon, 3 Jun 2024 10:49:15 +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; Mon, 3 Jun 2024 03:49:03 -0700 Received: from rnnvmail203.nvidia.com (10.129.68.9) 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; Mon, 3 Jun 2024 03:49:02 -0700 Received: from nvidia.com (10.127.8.14) by mail.nvidia.com (10.129.68.9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1544.4 via Frontend Transport; Mon, 3 Jun 2024 03:49:00 -0700 From: Maayan Kashani To: CC: , , , "Bing Zhao" , Viacheslav Ovsiienko , "Ori Kam" , Suanming Mou , Matan Azrad Subject: [PATCH v3 02/11] net/mlx5: add dummy last action Date: Mon, 3 Jun 2024 13:48:41 +0300 Message-ID: <20240603104850.9935-2-mkashani@nvidia.com> X-Mailer: git-send-email 2.21.0 In-Reply-To: <20240603104850.9935-1-mkashani@nvidia.com> References: <20240602102802.196920-1-mkashani@nvidia.com> <20240603104850.9935-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: SN1PEPF000397B2:EE_|SN7PR12MB6744:EE_ X-MS-Office365-Filtering-Correlation-Id: d137efd7-10f7-4f3e-a681-08dc83bad038 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230031|1800799015|36860700004|82310400017|376005; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?gIBk5Lw3i7mCXTe7Z9ahCZD9GzDGyaX4DfYzzuyySDmlgJDE4zV33w9VXElh?= =?us-ascii?Q?0wpLTbzc9OsWpfFhIIgrBVXe/rfIKGrWBGAqvkbMBR/spY5v0ofN04QdKael?= =?us-ascii?Q?zAqajGPZomiVlszlNRsESaGzvCePYNCnZ6caL2oElbOWM+7SEhLDZ5T32ARr?= =?us-ascii?Q?L4yIEFP+R9PYtZS+ZnXauAer5w4WYNM22MceqlpNDsGHGIFx6c4Lr6IVwgL3?= =?us-ascii?Q?DkwTWObise07PfR/SwXYysa6CmMCjA/1S9BcgRUhom/71Qjg+XyByJYRu+WO?= =?us-ascii?Q?aRw8idsfmlxQXOlstAs0woFvGTv/7ME2821JUlUFk6R53wIUY3oFVG2Txyll?= =?us-ascii?Q?DdrqqzA/YCcju0CRLQqHAW2AGvN6AOyA4PZbPNOgc9OQEwvm1ajx2ovnNSP2?= =?us-ascii?Q?/NovX0KsSPGteThOimukROwuYXJGUHfxIWgANBkzQfHfv7xKnv5cjwqlckHd?= =?us-ascii?Q?Cr2MWG6IKg39gq0RBME8NEIiE0sdS0GdQnf9/9JP3x6rfWz9dBjpaej/tNz3?= =?us-ascii?Q?lH8mV4/vK0ORwFwP4sZPOkDPaLyWU2KbCZbCzKwbcFzCAU0JqBoSm7IkSPVw?= =?us-ascii?Q?6RKTDVfBmt0kb2K9QDnnfksQtc4e/fVzNkgWVFypa14Zhr+9Uh76Aid6DLqF?= =?us-ascii?Q?kvz19YgvryUjqsWuGuZGJ7LlwiReaJv4c8NaXEEJJnv6I7yGcweloK6jDD/P?= =?us-ascii?Q?6F6z/QZVQw6A6RRYCYghfoneFAXWhgYVMJNJaLgUc73OMzizm9W5WC1LzTyV?= =?us-ascii?Q?FTsj/dtBfT/sLwWHf7FcAw5ORh0LUhh/GrLDc4uQYGHallomrNJzWfmpoJg7?= =?us-ascii?Q?EFQGdizbz/kRpr4bbWlJHyOghtzWjKnt3TFVXb4i8tJUFvhAlKGSvEe/C5wj?= =?us-ascii?Q?ODjeTLOHcZd3qqaA0IIHHhZRlSC0wkdQl4OFjcgiC0MFbk94Vc/5uqvtJhFM?= =?us-ascii?Q?U940Fq7SMnon+xrD6VrarwZu7J2knzgN203Tb4qw/nOYDt0qbHxqyf5XnZPL?= =?us-ascii?Q?ZyfBYxbgTwamyg2cf0zJL8W8jO7gkiisFQ31I41hTKo3bSbTvkqwTrffoBro?= =?us-ascii?Q?iPHKTJirJmaLc6bO8FA9G1/nDTtcDbmIKDyXPMVT+wKWlho0gE4GGHLWkogj?= =?us-ascii?Q?TzrTfsmRDnIOKNxXpspoku6IReAcBHOZS0rcponGHCCenfjD8sS+K2YRVjHl?= =?us-ascii?Q?bYXjhp6aLlodqoy1RWMWEa5c7dOjCn4ZWkELwYVE9e0ZOZt5QbZQPwrN77vj?= =?us-ascii?Q?ldpI8+WK//D/BzOx6mfNKDJUZczT62N7YcY5SPAESxcrDEj1KBvK4GOJq5UO?= =?us-ascii?Q?Z034Am29v2XfVkyLOjXFgzUtjB2WqS0rfeYkSfuGjO0jNkZivwSsAykNEoQS?= =?us-ascii?Q?t2nt1vOS1ANzQTn2LVfMLcpO93RF?= 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:(13230031)(1800799015)(36860700004)(82310400017)(376005); DIR:OUT; SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Jun 2024 10:49:15.8890 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: d137efd7-10f7-4f3e-a681-08dc83bad038 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: SN1PEPF000397B2.namprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN7PR12MB6744 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 --- 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.25.1