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 90F7641F51; Sun, 9 Jun 2024 13:01:38 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id B2FAC40678; Sun, 9 Jun 2024 13:01:36 +0200 (CEST) Received: from NAM12-DM6-obe.outbound.protection.outlook.com (mail-dm6nam12on2063.outbound.protection.outlook.com [40.107.243.63]) by mails.dpdk.org (Postfix) with ESMTP id E64E540676 for ; Sun, 9 Jun 2024 13:01:35 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=HqXIrYs22kXJlPo9yMjW6QspCYkRpn5P3am/Q2H7aoDtPdWT0IRSxLHvcjD2+HYTZwZdAy+uTCBksDnlZD8S3v45nnfLflfNN6iN7Vc3gDattrDVetQ9EePdmUlhM2/GZ8o0VKnB/e8v2YyiWGqrXXETgyzc5MPlt9zO8WFlugDXYpiORcmOtfaNEq21LmSrK3Q0g4T4A0SNMcPHUATIEsnbtpp+fXph1vwpUW7eUoZwvKMMU+h2kmHvQLbjZAtEzrUzDIZI37k95l5T7XGqXf0u3AFFz/B4tE1Nb9SZYIUS78FJmINc/dbJaHmwhq3YAZbGNw830FaGxGS8Bd2ARw== 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=HylJsfWerRYGxUyJai9FiZLDZEPmlK7ar7mI7Ga+/dM=; b=XlaOkPPZsO1rF8MvgewQ7UCcur4oLZTFCdmeh40JaR4spNTytjY4tb6h9bJop2BXpsHy35/jikicEwaJLoXordeSQh1GK6LzlfjKaUKhbSP1tGTGEaVttrjiTWclc0Np0R4sa03lt8Xb3EKYEVDZFguOpO3onG5RwXZ4SzR/FRPMH2bjq9KSEAQ7jk2erCKdhC59dxAeKbmx99RwikKXjRq/BI8qT7lYTd9FcIXv7FOnT0UhcRn4C+ORAWYiotyd09i7oIa/2sahRaEFG7fF1Tz1SUy0lYXNLBYongnbivGGs1Xnh8HaKlDIfSyAHsVIiWsDuKwpq+rgAaPbbaFKqg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 216.228.118.233) 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=HylJsfWerRYGxUyJai9FiZLDZEPmlK7ar7mI7Ga+/dM=; b=cg+7p64aqN+qrulyci+o8nfkCJp1+nkZoUYGs66QSMsX+p0pngFZPBLagetdCYBlifmkGvTE2a2hArgaPYGUCZG4ML37LUlGWzaVpgkIeO52hBC0w9ay4RHMiVMSsckoH9wdwJxXc8mbMI8MLguVsMoGyh5c1ngdywQDCaM2lEeoLe2ZfIu+Elejy44PuzCafU/kzLGTWCf91G7FtRkIVgeTZ4J7yvvlPcGs0BuEEmSEwx/PaQyf4ZbOnb6Bm7stq+AVsPtoCcYyQgyDx9IorfRV5OTpVKd5yPWwLhMQhKkcrtcrVl+xCJvTWu1j2LzHBmS5FPYqFDybSeXhGskB7Q== Received: from BL1PR13CA0353.namprd13.prod.outlook.com (2603:10b6:208:2c6::28) by SN7PR12MB7911.namprd12.prod.outlook.com (2603:10b6:806:32a::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7633.36; Sun, 9 Jun 2024 11:01:32 +0000 Received: from BL02EPF0001A104.namprd05.prod.outlook.com (2603:10b6:208:2c6:cafe::94) by BL1PR13CA0353.outlook.office365.com (2603:10b6:208:2c6::28) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7677.14 via Frontend Transport; Sun, 9 Jun 2024 11:01:32 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 216.228.118.233) 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.118.233 as permitted sender) receiver=protection.outlook.com; client-ip=216.228.118.233; helo=mail.nvidia.com; pr=C Received: from mail.nvidia.com (216.228.118.233) by BL02EPF0001A104.mail.protection.outlook.com (10.167.241.135) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7677.15 via Frontend Transport; Sun, 9 Jun 2024 11:01:31 +0000 Received: from drhqmail201.nvidia.com (10.126.190.180) by mail.nvidia.com (10.127.129.6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1544.4; Sun, 9 Jun 2024 04:01:18 -0700 Received: from drhqmail201.nvidia.com (10.126.190.180) by drhqmail201.nvidia.com (10.126.190.180) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1544.4; Sun, 9 Jun 2024 04:01:17 -0700 Received: from nvidia.com (10.127.8.14) by mail.nvidia.com (10.126.190.180) 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, 9 Jun 2024 04:01:15 -0700 From: Maayan Kashani To: CC: , , , "Bing Zhao" , Viacheslav Ovsiienko , "Ori Kam" , Suanming Mou , Matan Azrad Subject: [PATCH v7 02/11] net/mlx5: add dummy last action Date: Sun, 9 Jun 2024 14:00:58 +0300 Message-ID: <20240609110107.92009-2-mkashani@nvidia.com> X-Mailer: git-send-email 2.21.0 In-Reply-To: <20240609110107.92009-1-mkashani@nvidia.com> References: <20240609085600.87274-1-mkashani@nvidia.com> <20240609110107.92009-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: BL02EPF0001A104:EE_|SN7PR12MB7911:EE_ X-MS-Office365-Filtering-Correlation-Id: 79551293-39e6-4237-04cc-08dc8873855d X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230031|1800799015|36860700004|376005|82310400017; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?Ju+3BgKw/nm835v/rGOta7bjHAFrefDZdccloH4e/aPE23ePWVBqblF3XZpM?= =?us-ascii?Q?ypM/y2F2V5HJKCHE7riHdI1eefMpp6VZboN+AO3o0z9uvQCQs25mmbaKbUjr?= =?us-ascii?Q?bzTCRgKBsTPHj2iEDSmcxtpGe2W16KGBBDCafoKWZ/JfFJyTGRqmzFFRJVxo?= =?us-ascii?Q?wjXDeMEAq9uODINV4qNwAOTEfSY1cuGNXWgEsnFnxEs+B1vqJmDsjTq29K3s?= =?us-ascii?Q?CYsrfuNCGdNnj07qH8d8MvzKusFy5Xd4tPYy9c6axeqtkeJG7BVDTX5gTFdO?= =?us-ascii?Q?R3Vcx2JKlhNdBXPrEYVW/jsy/XBLQsoism9zSsuTerW/iTuqN1lnQ9gS0cub?= =?us-ascii?Q?6tOg485H5gnYjQUIRDP2QC/z6+aZAmPYIjqyNQ4l3G3Z0L8b0mHUX9aprU3o?= =?us-ascii?Q?udFGSRCxFM7BMgGNpq3xAP46ImCHcLEjvq79N4juWdLbBa/rU0scitke7yAP?= =?us-ascii?Q?cQxhZ8LfwYX+j6jhd7tarJIhrRD3xRRJ7d7XVUAaQIcbvGig9EHazdm9bukp?= =?us-ascii?Q?Bqd4dx7ZwtTEQXn1OZ9hf77ZpyJigZn0IGxRKEXZ0j1hNYNeAjSz3lSpLRWj?= =?us-ascii?Q?7IrHaQVkZVP/YHPa6VcFS1ISgZ8lK1/xw5HyJP6RqvHhY9KeRm7UlkKj6rNW?= =?us-ascii?Q?29zDvO5ZlyyPgqIZYcFY7bEG+EIe6/X+l35hjc21OwNZ+vYc5HgpbApfk+B9?= =?us-ascii?Q?ERRu5lpboJse9bzbYHphS90LGGwlnCRBDbQm8lk0SUlt9/MxxYib9K6GdDcb?= =?us-ascii?Q?5f5ll5EI5s/VY9j2oAyYpAOfS03N+7iZBdaXkZLmRZYIIIF28rIgzBMWBzV1?= =?us-ascii?Q?fzV2QklKqWxLNlJ/9sQf7s+arz3gesyE/QhBLd4dal1khE9hmD6/V/qtSEjJ?= =?us-ascii?Q?DUcymX+ZoeY3xwIuCP7UkcSf0Fctilux5riwS6cQfkbX4DHZ6sVeULNZhHmh?= =?us-ascii?Q?8ooXH5LCrHiLkZP5BjMKkMW4iccJ//7F5AH6aJ7xqTBAN8h83Yzl6uenyKis?= =?us-ascii?Q?RH0Suua1kpiM4embQ7KqScwekOfO2nqiNmfydvWcLSQToeVLNiQUCwzf7X8C?= =?us-ascii?Q?xYuvEL5sb/MYnW2AGn8Ul85S98TlB3nP9U0pYt67Ly10a755/pSaNull82LH?= =?us-ascii?Q?kbIDA9h9XaLGZDHz6f/jHYLtp0OBqOgxPzst30P5hDotmQN3eBjErv1gZ4Td?= =?us-ascii?Q?e0RsWKbCCHj621vhfpE2P/Xz0jNs3E7mKoz+Qx2SQKys5jIP2kKbHeznJcm3?= =?us-ascii?Q?PWMvSFkBnNnxooi08OLci5nh11fB31gdZ/2dTy8QmSACf+lE4tGO3KlDrjEC?= =?us-ascii?Q?4dsz99Zvx/G+McPwigwazR5eYnMQQsDSK0iEPncmgO8XyJhRXuILDg3vvGDw?= =?us-ascii?Q?hu71Ul9LZF20INb7u0DKm3l8nHRENu8nbN1Rl7hlpeHaU1J+JA=3D=3D?= X-Forefront-Antispam-Report: CIP:216.228.118.233; CTRY:US; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:mail.nvidia.com; PTR:dc7edge2.nvidia.com; CAT:NONE; SFS:(13230031)(1800799015)(36860700004)(376005)(82310400017); DIR:OUT; SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jun 2024 11:01:31.7975 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 79551293-39e6-4237-04cc-08dc8873855d X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a; Ip=[216.228.118.233]; Helo=[mail.nvidia.com] X-MS-Exchange-CrossTenant-AuthSource: BL02EPF0001A104.namprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN7PR12MB7911 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 a6ff1f8ac08..69e0dcff4c6 100644 --- a/drivers/net/mlx5/mlx5.h +++ b/drivers/net/mlx5/mlx5.h @@ -1529,6 +1529,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 d8a166ed4ec..5f1e93c3aad 100644 --- a/drivers/net/mlx5/mlx5_flow_hw.c +++ b/drivers/net/mlx5/mlx5_flow_hw.c @@ -11219,6 +11219,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)) { @@ -11297,6 +11308,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); @@ -11422,6 +11437,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