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 376F741F50; Sun, 9 Jun 2024 10:56:43 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 4F52440650; Sun, 9 Jun 2024 10:56:32 +0200 (CEST) Received: from NAM11-BN8-obe.outbound.protection.outlook.com (mail-bn8nam11on2088.outbound.protection.outlook.com [40.107.236.88]) by mails.dpdk.org (Postfix) with ESMTP id 245804060B for ; Sun, 9 Jun 2024 10:56:30 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=I7p5rrEtQKUshYAcU/NsULH+Ew14QkmlKJWZFHdLYTTb6i+1mj2p7XpnuTXsaf96ZrxpENWfQHw+CiEZRkurz11JMuKgSmA9MiE7z3WbCD6F/QVxtIj0inVhTZv23hcuc6csa665zZGEfX1/f3kIVdgIt9HDsFRjEVLUlRrceCckHAeBihod5emqq2gXIOLY20f+ugcsLR72J/NhQGighb1kPJgf9bvXJYZ/0W9J96Scuhmyco43mGPORq69if5Qub2vGh+Df7J5YQyvjecS4filVAHS3GmlatAS3prqcgmIIudjnG/37S0hTzEyDY7qLnJitp2aGasUzg3wm9L9Bg== 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=TyN9e2Z2Gc1ogAKTONXoRsZFjiYePVsG1/JzliMgzxal7wJXKwwISQZ1Nl/BUIH1nh2lNJxLPn7VJTNvZ2hWZnK4Pp+adPGeSuEHLpaM4FJHqLOImys5DeXie9c2M2OEibI2Q3oOQYhjN7JGByhxLx70Gd83ZvgPOPpycLvMv0FHImuvKGoKr2p98vTratNGuk5BifP+DyizgeNAeZqry3WLFaCUufEWEe/M8XssLu2Lrj9zROKQMnkmOWJtgH0R+kSbFTgspYWES6wOHjlRcWi/AAOog+KJzHyjdEhMzSZ5lVjKH1vEglBomfp8+pjbMhqodOIhkCZBu77QhCDrqQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 216.228.118.232) 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=MkNPmM0odYxQ9y1Rw814VYmAkFJ3tuvkvN3undlA3gkj/PaYUdmhsPibKtdQfxigPSCJ1BVXxVmXgMyGL73iLzWELxkGk/iZFtHkfmWhNoMtw8V6D+/KMQnu13hKfYRd+StYElAKdi3+mhqsTR/JJuXPDIwW64gyL7O84guOVcUZ3dN8JbXUCEzhkhXOrYKVCw7h4uZYbiysudP6pST3oFxfZP1Fga7PV1ThJp7eHnNNAykIOvoZC298hhpTMXtibak/ibPuS7BaQbFRciC+enshfVOjOiaBNebdQ/395blK8KSkOepB80F1WmN0BRWGJ/vz8WcX8oSrbiYRWix7/w== Received: from BN1PR14CA0024.namprd14.prod.outlook.com (2603:10b6:408:e3::29) by MW4PR12MB7384.namprd12.prod.outlook.com (2603:10b6:303:22b::15) 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 08:56:25 +0000 Received: from BN2PEPF000044A6.namprd04.prod.outlook.com (2603:10b6:408:e3:cafe::a5) by BN1PR14CA0024.outlook.office365.com (2603:10b6:408:e3::29) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7656.23 via Frontend Transport; Sun, 9 Jun 2024 08:56:25 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 216.228.118.232) 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.232 as permitted sender) receiver=protection.outlook.com; client-ip=216.228.118.232; helo=mail.nvidia.com; pr=C Received: from mail.nvidia.com (216.228.118.232) by BN2PEPF000044A6.mail.protection.outlook.com (10.167.243.100) 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 08:56:24 +0000 Received: from drhqmail203.nvidia.com (10.126.190.182) by mail.nvidia.com (10.127.129.5) 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 01:56:10 -0700 Received: from drhqmail201.nvidia.com (10.126.190.180) by drhqmail203.nvidia.com (10.126.190.182) 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 01:56:10 -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 01:56:07 -0700 From: Maayan Kashani To: CC: , , , "Bing Zhao" , Viacheslav Ovsiienko , "Ori Kam" , Suanming Mou , Matan Azrad Subject: [PATCH v6 02/11] net/mlx5: add dummy last action Date: Sun, 9 Jun 2024 11:55:51 +0300 Message-ID: <20240609085600.87274-2-mkashani@nvidia.com> X-Mailer: git-send-email 2.21.0 In-Reply-To: <20240609085600.87274-1-mkashani@nvidia.com> References: <20240606123256.177947-1-mkashani@nvidia.com> <20240609085600.87274-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: BN2PEPF000044A6:EE_|MW4PR12MB7384:EE_ X-MS-Office365-Filtering-Correlation-Id: 1f24a976-b454-4b5c-558c-08dc88620af1 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230031|82310400017|376005|1800799015|36860700004; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?4iqPQIhNIPYfllkq5Zd/PxgWUDkpiJsvceTiG1UjHi2DAqkm2YeulaksN9EL?= =?us-ascii?Q?BJCttVlDdFuadGxpvWc0R9TGo1nEzA0GLcsRoo6zm0yjj3jreqs1lUrqJ1Li?= =?us-ascii?Q?Nnp6MdKgJA+Qx9TxirdXjvjazl/1WCWpduNFePWJtBW6eXRZqqRJg4iGpxl2?= =?us-ascii?Q?v5quhcxvf94GcTSV0eD78TAc9qldF54YJau2DnXos8CZk+lGxtvKHNeGangc?= =?us-ascii?Q?7FnZA9LNeLwTjL5lSw7UVDDqdnWipSAGCHmhIvGgbZX0R6PMpspvRsumbpbo?= =?us-ascii?Q?pSZu9maXzWJObj0cKLcCVjQSELVA3lRuR2++CGD8CKFssBWClOgnkNVITm1e?= =?us-ascii?Q?oIIFt6tzf8WPFG2bHxnAoPJ5dbe7Xq6SL52o804WJOSfRPDz131cW/+Y0JNJ?= =?us-ascii?Q?lzpvfPiH7JCaHhOUjE9LL++ErLttYUiM1HSG0wssWfCCt7F3vx0XZsn7q6LE?= =?us-ascii?Q?SoD6b2zieXuf5QlpLbGIkRZqB8E+0cJlRRjjTMOi5dnj/AX96dt2vxkIWMmY?= =?us-ascii?Q?OcA61hSMa6Ujh/2PMQowAKqiu461RD7gES8g17Zin7A9RtxcIM6bKARkcq74?= =?us-ascii?Q?iu2IfTs5aasc1PYB1RZgYviE5LuiTLUpCBmRjcqgHaCb0q/aAJ5K0KkMO7Ft?= =?us-ascii?Q?9wZlAgb6ZQoJ8EehE1b/HXuS6gpSful/z0LnPoaCmF/Nar1riVr5aZs9e2r1?= =?us-ascii?Q?C7V6eZu3rbFJ1/s41owj2+w9+3GCAILIzeOIuqz2jDpXjde8CRnfUy/v9RQt?= =?us-ascii?Q?+mrXd+EFpl5ORrOp2OOKyJYTyEX0JJsH7Avjtf4gUQR9vgRrbPeXwWRepE1F?= =?us-ascii?Q?CKNw4LLwRMilyzI0jPDvwWR1HmiovJnQ5+fTC9/dUOrmdniryQJmFz3aDW7K?= =?us-ascii?Q?NHWesfD7gw/5mEp/FqvPHGTsVyo/ZrmeW5TnTn+6ZBKgCaexEGcNPzdiy4TR?= =?us-ascii?Q?9Vh+JK5Dr+x4lhITS0yUKLdWHRZ8G0bdcpf2Fu+HNmXjj8DSTCuza21ivFOS?= =?us-ascii?Q?+6tlK6CudGBvRxuPiiazTg7AX9Ydi8XqZG42rA6dWy41AT5bwCHCY7v/HRCd?= =?us-ascii?Q?f3Y7ABhjctYN8dtBwTCn3DbaJ5GJrRyhQ4Kthjg5DzZvzMx7rA4VswFj9uaV?= =?us-ascii?Q?4W7RYZE4BE1ZsOcbcEh/TfKAr8/rlqmfqakZ75ZXfv4v9dRRlYmyjUzu4agP?= =?us-ascii?Q?WROmzf7cT5VSze0Yj6kGD0Xp0BvfY4FQIS487/zpXWHPqkH54IZy0w/WdRXH?= =?us-ascii?Q?85zIPRRyW1Eo2eiCxygHP4CMw1gOlQcjjlIrUjw+jpmK1MavtJIWtZuJd+HX?= =?us-ascii?Q?s8mRwwRRVRPFGC89b5mjGPwA9wQIqaqrlgrLcVggeYnt4qxrL8iimt06AUn+?= =?us-ascii?Q?tdArEd7MfP0rfFAqcZkHdY/m6qI0dMUkdxqLtxUbW24isMF4fA=3D=3D?= X-Forefront-Antispam-Report: CIP:216.228.118.232; CTRY:US; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:mail.nvidia.com; PTR:dc7edge1.nvidia.com; CAT:NONE; SFS:(13230031)(82310400017)(376005)(1800799015)(36860700004); DIR:OUT; SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jun 2024 08:56:24.9653 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 1f24a976-b454-4b5c-558c-08dc88620af1 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.232]; Helo=[mail.nvidia.com] X-MS-Exchange-CrossTenant-AuthSource: BN2PEPF000044A6.namprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR12MB7384 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