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 4567644173; Thu, 6 Jun 2024 12:07:16 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 3D6C8427E7; Thu, 6 Jun 2024 12:07:14 +0200 (CEST) Received: from NAM10-BN7-obe.outbound.protection.outlook.com (mail-bn7nam10on2043.outbound.protection.outlook.com [40.107.92.43]) by mails.dpdk.org (Postfix) with ESMTP id DDC7F427E2 for ; Thu, 6 Jun 2024 12:07:11 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=PvyPgd+58lWC/nvj9JIfTRR55Ny3by0ujMMbt+JZqdhKsMW+DOxon/x5cfVpIa3javmFENO5S0PHHdNy0Jx//SWqCT+zF3F2tDCImxrMnerXfcQxtySTjvPeSyrpvgS4XnFatQP0ubpn7aaWnqaM8U+8Ql2VEcP5DTYlhgz8ZkQHgY1ieLszPoVlRL7DT5MYI5OvUjqFFyaMjEI2V6QZW7FROnM5OzWAxxwTAPf7W7LIg0o3YAfYp0v4Wie9oE684XFkqaSoJBZeQcZeTihfjXwWDs6BEDKSTD5W1omEkjLaIB7S72IFHHHiBcGW6hLHHok5ODtMQ/xZ2x34OcZIrg== 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=LfSduwgkNIFLWn/4s9VuvazbubC2LC53vBqtqqZvrrk=; b=I3rbTRLGnJhq2qi+zEJglJhlg577VLNupbOfOaTKGQfYrJnaeqLaitW5zinAEPj4ijn+fMuOecP1gCYMy0k87/13P2A9CoCP3NhrNWsxPdOTPiI/vcXxs7iGFO6D54H0qtx+AgCWCExKDJPTdirYU7UMxNBjjzzkrLqCkxpXYscOGhRmXcU39/AGku8acg+uRDUZyDEHGVUIkvlwbSZs2X/3EzBRNDVfYJbmbpcXC5Rwr578AqhDYWo6bYp+/jrF+423OqObSju82HYO9QEwXbz/IyL4w15OnxVilavdRwFxgcq0WC3Kb+X8pOnDSvemRWmTpdDivKQdqEcdBqjutQ== 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=LfSduwgkNIFLWn/4s9VuvazbubC2LC53vBqtqqZvrrk=; b=mfnE5CTtF7HdaHg3BLC+9E20HD1IlD2hAAzWITm5zvR98FtiwnIewEjQXLSKRBpREAkAmnMSMsReWiv9Hev5zLWAETxX5N2LFEld3wlqAj0rUtVrJbDePTOC2mM0tw1lugY9t711UUMXjumXRPE1leKB8DzA/uRGhWanKxQmgk8WkPFYkBXLigLD4xAcC1aVBlKl52GmnomNte6cEjox4IXlhbKPtBETyNINAfZn0aimVHMCRG6IO6atF4In2CcLsStE8z044eQsImvhPMID1K/rQskq9kL+GhcMmcRGuC21psKTY6st2tC/RKGd5fWb/bkCmlH9uYwmzr6oamin+A== Received: from MW4PR04CA0049.namprd04.prod.outlook.com (2603:10b6:303:6a::24) by CYXPR12MB9386.namprd12.prod.outlook.com (2603:10b6:930:de::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7633.31; Thu, 6 Jun 2024 10:07:09 +0000 Received: from CO1PEPF000042AD.namprd03.prod.outlook.com (2603:10b6:303:6a:cafe::af) by MW4PR04CA0049.outlook.office365.com (2603:10b6:303:6a::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7656.21 via Frontend Transport; Thu, 6 Jun 2024 10:07:09 +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 CO1PEPF000042AD.mail.protection.outlook.com (10.167.243.42) 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:07:09 +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; Thu, 6 Jun 2024 03:07:00 -0700 Received: from drhqmail203.nvidia.com (10.126.190.182) 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; Thu, 6 Jun 2024 03:07:00 -0700 Received: from nvidia.com (10.127.8.14) by mail.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 via Frontend Transport; Thu, 6 Jun 2024 03:06:58 -0700 From: Maayan Kashani To: CC: , , , Viacheslav Ovsiienko , Ori Kam , Suanming Mou , Matan Azrad Subject: [PATCH v4 1/4] net/mlx5: reorganize main structures Date: Thu, 6 Jun 2024 13:06:12 +0300 Message-ID: <20240606100615.171695-2-mkashani@nvidia.com> X-Mailer: git-send-email 2.21.0 In-Reply-To: <20240606100615.171695-1-mkashani@nvidia.com> References: <20240603105430.10818-1-mkashani@nvidia.com> <20240606100615.171695-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: CO1PEPF000042AD:EE_|CYXPR12MB9386:EE_ X-MS-Office365-Filtering-Correlation-Id: 355eaad5-7d9a-4fce-afa4-08dc86106d7a X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230031|1800799015|376005|36860700004|82310400017; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?eWOODvEcOdo5ehFte2y1TE4TKg90SetsJ2RhaJ4xhBDGHiZtra8I3KgHvNXo?= =?us-ascii?Q?DDzSwDIRR+r7UyEBGC96AGonRLRHWFF54+lWog7+0jWHtR9hc8r2aeIuFsS+?= =?us-ascii?Q?TlXGhhGwq7OUCXARp/T+9uSMpIb+0uI81mhRpnVqvZEpRxtDbwEpFsGcl/4m?= =?us-ascii?Q?xZcvkyMMswa+BcMnoXul3xemvM54k5k3cofT3aaasQ1La/hxXY48FucnH69C?= =?us-ascii?Q?eGJepDTTd0Rmngoa6lYFSC0KZAhn5WdmD7OjvJR1gJZXW0C8d6FBQ5cU487y?= =?us-ascii?Q?gDlrao82xCsCBJDh8bgo/VZ0GR5gKjoarOI5lsHN9ooI1De/UR6Np1iOGjr1?= =?us-ascii?Q?ga9fD4dONA7mfrNcUC2rgwNvTpODTCScoJBuagPbJD117Itsjz8sabBgckEU?= =?us-ascii?Q?5OJf0eR7z0GFZaBYyDGb8X+2OeUZMMiwYRhd8q2+hz8ISNyNWd2uvc2Ygg6y?= =?us-ascii?Q?aWVLWW6rmY2ortO6YMCykOlD+0l5C4WYddLWnsoSgN9Q9MJSgCOypxesHgoS?= =?us-ascii?Q?+jZiLuQlAfSDNhfUPztPVkwO/ihIOYx/TwCmDOcEyvkJfwqkDv4q2aTGP2pc?= =?us-ascii?Q?d1+86hgjX3t6F8pA/orRqTjKmWgm9tNWzsm0uWfCs+dBmtIP0YimEqjTBTz+?= =?us-ascii?Q?jieWF1k/Z+u6S9FSg+c8WCpOcU5MkdtzS7ArarB1NHmnnxroe49RnI+EfN08?= =?us-ascii?Q?h15R0zA19qsB8RFS7cnTdhvC/KDyiK9vqaVAu80h6+VFATEdiGw7rB7+CuTv?= =?us-ascii?Q?g7J3BKoxIuRbCU8BNXclYggyz3Mw8BlP6OjWalTxJ1X9EV/ixMNVtj7HLHzC?= =?us-ascii?Q?LqaOrYLIIXwXwGs9tTEIgxC1+8T9ZLL48CVUHoPk1q7HVX+oHzf0GlBZo0LI?= =?us-ascii?Q?JzkYF4tipKs0tMX/neDGIWMifZc3FjCP/LvzZ1/xCOHto3lLLjQgsZLuaBM6?= =?us-ascii?Q?6jTozVN0CuWhRWI2+eXZoANFIC6AcWblMvTMBAakGIBmLllyu5+tFYepqQ6W?= =?us-ascii?Q?I0XbthhaQya0+H9DGZIT8rM86pldnfsJmEF9o61D2Mi0w7rCSCFbAwVbBboP?= =?us-ascii?Q?V6Oe35JPIGK9kvPvKdkzaptumdanrDbp1cHhxOmayBlB2Q3A6N5OrN8TzjkN?= =?us-ascii?Q?Q/6CaGiL/j7V2rtTRgBjjO10BqO5zEwnSUkgJfvv1dG45R6ZULfyWV9dgWbj?= =?us-ascii?Q?St0Fgujx9zkgeSAWCVZVIQldL+uqzOzs9tR9CRQreio1xRoyi3wj64A+orjy?= =?us-ascii?Q?N9WXVfUrb38nf8pwkN1Ud4wL4fkHO+nrGnpsOdtzVI/G6RtHcXpbqvtSrUcE?= =?us-ascii?Q?22vaACLsL5Wry8IK9Y1N0wJWJm+UB+or7BSyCfa1e55wJiKoProAu7hltii2?= =?us-ascii?Q?IUp/+ER1VM6qGb220TD6ltK1TRJr9BK/SNrayKIONW/OBHE+AQ=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)(1800799015)(376005)(36860700004)(82310400017); DIR:OUT; SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Jun 2024 10:07:09.3185 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 355eaad5-7d9a-4fce-afa4-08dc86106d7a 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: CO1PEPF000042AD.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CYXPR12MB9386 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 Reorganize rte_flow_hw and rte_flow_nt2hws structures for better performance, and removed packed. Signed-off-by: Maayan Kashani Acked-by: Dariusz Sosnowski --- drivers/net/mlx5/mlx5_flow.h | 26 ++++++++++++-------------- 1 file changed, 12 insertions(+), 14 deletions(-) diff --git a/drivers/net/mlx5/mlx5_flow.h b/drivers/net/mlx5/mlx5_flow.h index 7e0f005741..5a3f047968 100644 --- a/drivers/net/mlx5/mlx5_flow.h +++ b/drivers/net/mlx5/mlx5_flow.h @@ -1328,12 +1328,12 @@ struct rte_flow_nt2hws { struct rte_flow_hw_aux *flow_aux; /** Modify header pointer. */ struct mlx5_flow_dv_modify_hdr_resource *modify_hdr; + /** Chain NTA flows. */ + SLIST_ENTRY(rte_flow_hw) next; /** Encap/decap index. */ uint32_t rix_encap_decap; uint8_t chaned_flow; - /** Chain NTA flows. */ - SLIST_ENTRY(rte_flow_hw) next; -} __rte_packed; +}; /** HWS flow struct. */ struct rte_flow_hw { @@ -1345,6 +1345,12 @@ struct rte_flow_hw { }; /** Application's private data passed to enqueued flow operation. */ void *user_data; + union { + /** Jump action. */ + struct mlx5_hw_jump_action *jump; + /** TIR action. */ + struct mlx5_hrxq *hrxq; + }; /** Flow index from indexed pool. */ uint32_t idx; /** Resource index from indexed pool. */ @@ -1353,20 +1359,12 @@ struct rte_flow_hw { uint32_t rule_idx; /** Which flow fields (inline or in auxiliary struct) are used. */ uint32_t flags; + /** COUNT action index. */ + cnt_id_t cnt_id; /** Ongoing flow operation type. */ uint8_t operation_type; /** Index of pattern template this flow is based on. */ uint8_t mt_idx; - - /** COUNT action index. */ - cnt_id_t cnt_id; - union { - /** Jump action. */ - struct mlx5_hw_jump_action *jump; - /** TIR action. */ - struct mlx5_hrxq *hrxq; - }; - /** Equals true if it is non template rule. */ bool nt_rule; /** @@ -1377,7 +1375,7 @@ struct rte_flow_hw { uint8_t padding[9]; /** HWS layer data struct. */ uint8_t rule[]; -} __rte_packed; +}; /** Auxiliary data fields that are updatable. */ struct rte_flow_hw_aux_fields { -- 2.21.0