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 72F75454DE; Mon, 24 Jun 2024 11:17:33 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 62A4C4066D; Mon, 24 Jun 2024 11:17:33 +0200 (CEST) Received: from NAM11-DM6-obe.outbound.protection.outlook.com (mail-dm6nam11on2062.outbound.protection.outlook.com [40.107.223.62]) by mails.dpdk.org (Postfix) with ESMTP id 0E7984014F for ; Mon, 24 Jun 2024 11:17:31 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=a0JLAQBamFuVbrNx0lG14GKAc6IjqIhFFUlJ6fogEhl3qdAwc079GSMbtgDI9Zp7JTXSI5BTEbFeHKvS5Mj/yzwUxUljjhtpkKlyJr7y195nJnpdd7hsYx4K6fRoF7NGjCyYNie7VrcWmDoeugK/LKHxZ/xoLugDzG8eOXGWXWkjjSZ+7wZWoTSGkwRHkaAPogUO+CQjR9OaGZHU/IIKORAB+iKx7EDNflzmmFiADcOEsk0m2WInHlM1SnG9hfZwGqZnpn2w1OF7VMZ17KNku25albGDWchpmBTypVYtECn17Cfxqx7p6UKaW/suaX81j7Oh8MFSZYXayJ9Rs9/Dww== 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=YvfuVakJYSkkqWzFS0uLc8EKcBNle5+WNY6mAWcCSZA=; b=Bc40HAvt2auKC18wqS6DOwXov4YCVWYYj1KdeekDjAD0uEMtON9qc/vvrarfvk22uPRI/7oUph5J/6Xfdg02qPivM30xxMYltiXCyNSX11h7pUvkasB67YHi14EnDjRcv5uH3YenVRTfZqoE7D1IAndwwhlYO8WK4ZMd6W1faOyYwokQjU66us7pLbScQ6FZb/yW4O1n6rEcmyJU1M3dOFgdBGPDdCh5rN9UxEvludk8dC25F/l4rijbMedg51vqxl40UwICpQJsfBLkXLRPPTpKQMpcXEUyNl309/0nSHiPM5sO/CzXygpo1hBfSXYJXXuOVUIKlkLZWQ9Rw7NV+Q== 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=YvfuVakJYSkkqWzFS0uLc8EKcBNle5+WNY6mAWcCSZA=; b=Rvu6kCYCMMnMrBvA9izB4bxm7565ABHVpOgLhftxuTzlsuRKh9Okk2ukMNf/LsM4TNxVtUubD+NqIkwE9k9QXVdp7d+aShCzgmzFR6R08uBgdJwXcMAujP7KFLBzJ3+LnDw56BDW5ODMHG2CHKhrKnBEiq1SjmxwW9nnrkRpn0zw8sqFYvkWCsiaJdGVg2VvaVXKF3YQZr94S9QJiBFtZkccjYKvh8qmNpY5GeMUR/JBYdXVjxJofOCGmHZqCYO3CXnpjWd6GCTalVnRA7HugHvUkdaxp3oFo/4Tx5td0BecniS1oZ5NagQbQRf4jlya6PheSga7W1zcql80nkymgg== Received: from SJ0PR03CA0374.namprd03.prod.outlook.com (2603:10b6:a03:3a1::19) by PH7PR12MB6936.namprd12.prod.outlook.com (2603:10b6:510:1ba::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7698.26; Mon, 24 Jun 2024 09:17:28 +0000 Received: from SJ5PEPF000001ED.namprd05.prod.outlook.com (2603:10b6:a03:3a1:cafe::49) by SJ0PR03CA0374.outlook.office365.com (2603:10b6:a03:3a1::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7677.38 via Frontend Transport; Mon, 24 Jun 2024 09:17:28 +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 SJ5PEPF000001ED.mail.protection.outlook.com (10.167.242.201) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7677.15 via Frontend Transport; Mon, 24 Jun 2024 09:17:27 +0000 Received: from rnnvmail201.nvidia.com (10.129.68.8) 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, 24 Jun 2024 02:17:14 -0700 Received: from nvidia.com (10.126.230.35) by rnnvmail201.nvidia.com (10.129.68.8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1544.4; Mon, 24 Jun 2024 02:17:13 -0700 From: Suanming Mou To: CC: , Subject: [PATCH v3 0/2] crypto/mlx5: optimize AES-GCM IPsec operation Date: Mon, 24 Jun 2024 17:16:49 +0800 Message-ID: <20240624091651.2295533-1-suanmingm@nvidia.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20240530072413.1602343-1-suanmingm@nvidia.com> References: <20240530072413.1602343-1-suanmingm@nvidia.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-Originating-IP: [10.126.230.35] X-ClientProxiedBy: rnnvmail203.nvidia.com (10.129.68.9) To rnnvmail201.nvidia.com (10.129.68.8) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ5PEPF000001ED:EE_|PH7PR12MB6936:EE_ X-MS-Office365-Filtering-Correlation-Id: 1cfb9ed4-2026-46f2-951b-08dc942e77d1 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230037|82310400023|36860700010|376011|1800799021; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?8GiL/Mz9U79mtKujXdvndJuMr5pTB2/v8+3DN9n6Id2EWd6pfiZ1XSNBF2iu?= =?us-ascii?Q?OAwQVMBXCpDNwNbqkbwkjlEC393LvAR63agSMixVbysijyzz5VgT5bpclQoQ?= =?us-ascii?Q?f5Es1GZMBZ6fR8N0lVytiQDhzQ82Ir5kmsF1/v8aNBpuaBQxZV56SL6BHRAC?= =?us-ascii?Q?qby51bRXqEfyd+yZkR4QcggRHi0hxvJNXDYejHEEmMySKakDgz0cBPhwhrup?= =?us-ascii?Q?lr2QdJXMgELOXTf0+thkBtP1zKEJPrcibM4xrJ7NWS6eXpDkJTYme7/Lo8fT?= =?us-ascii?Q?PQpipCT1SBaJiyInIsEYsdxYN0ScI9dANNehwtjMJVC0MHZMnpqRXr7n5gN6?= =?us-ascii?Q?TgJhQ3O7ddht3VbQF2/yOMaiTIICathsRu9BeVAJye4YaPPTMCLk011yE2Vg?= =?us-ascii?Q?3CNbF23IZGxbdBP5TFVrnN+HYtouowYdsMn3ap6eK0N5jKbNuc6kz+sHV22X?= =?us-ascii?Q?WlyFB8i8P4/WKoIrcdm6+gzUIM5Z0vdwNqwtaGh1qupQivht2njUuaHGpzoe?= =?us-ascii?Q?YNKfA6j6i38fuPXRcue+ZQsRdqe+Pjn/T7kwT+GQ/tWlWCJZmWzQ7LjOieFS?= =?us-ascii?Q?KQudB8oyNXUUTwWW7bS/KAPZj/um/z8qI22xQqOThy0n2DOEbv+tUjFPCTpB?= =?us-ascii?Q?iHc0kLmzuOOLe4N0TSs/2GyJVKkE7BHfIDo0gRdIPunwifT3ml+q4iOZlVtd?= =?us-ascii?Q?K+TUAkU+g8MUmLJZOE75i8DNsiLad3nzOcaMFM50/XS2Jj3KQWwPX5e7tU5x?= =?us-ascii?Q?5Km7hOUEKCuIiJqzyxXuXRh4+npcZ5/FFEav7R+HwghFwGnZYkenjX1XjjdQ?= =?us-ascii?Q?aLNVGAj42WW8DHdom/FUWAnn33PR1DF+3rhXUbMgznpVplvnwD065sK1rOu3?= =?us-ascii?Q?7cnWYrJAATIJ0FJJTUGh4ROdB0IJYrwe7GHzeKKb+3KDbALMX2EdP8kB6Jkg?= =?us-ascii?Q?6YktRtE0OsZfpX76ua0/mU3xsWO+9UXfKr245dgzgTd4OZD7KzheaxNqvCjP?= =?us-ascii?Q?zpQHZLjul79L5KhfAzVqd9fN1ClOCXTXK+fnRuwhOfTg2myykShpDBKeI9/Q?= =?us-ascii?Q?RqDh143vc7elu2hl3ekD9qeEZuu3G70l9w8mN7aNt19Tcd60/XO5JPDdJa1P?= =?us-ascii?Q?XHIhTZ5E1z5e3sjotY/V2uqjOjrZuZ4Rl4zuGImZFyUduiknweJ/8KpTx3uH?= =?us-ascii?Q?XFIDHpIhq8d8Ma7qUTQc4iaNjPWr1ahb2w4VO7acu7p9uZoIO0p9LlJPcdyQ?= =?us-ascii?Q?BRaff5aD8yoHVlgPnZAkxQiIHVh2uzz9gK7bc2mTCdIU9aLyE5QJyL7ly+IA?= =?us-ascii?Q?hEI9xX1DjovbnzGmXEVn7Jsc9TEgxv7q5qzfeA5h6LHCiJqDTOnIMKvqRLAd?= =?us-ascii?Q?lMUifpisEbxXWIqDi8XGjyIKZIY1E9v/ody5++Yin64BJl4Jfg=3D=3D?= 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:(13230037)(82310400023)(36860700010)(376011)(1800799021); DIR:OUT; SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Jun 2024 09:17:27.8773 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 1cfb9ed4-2026-46f2-951b-08dc942e77d1 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: SJ5PEPF000001ED.namprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR12MB6936 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 To optimize AES-GCM IPsec operation within crypto/mlx5, the DPDK API typically supplies AES_GCM AAD/Payload/Digest in separate locations, potentially disrupting their contiguous layout. In cases where the memory layout fails to meet hardware (HW) requirements, an UMR WQE is initiated ahead of the GCM's GGA WQE to establish a continuous AAD/Payload/Digest virtual memory space for the HW MMU. For IPsec scenarios, where the memory layout consistently adheres to the fixed order of AAD/IV/Payload/Digest, directly shrinking memory for AAD proves more efficient than preparing a UMR WQE. To address this, a new devarg "crypto_mode" with mode "ipsec_opt" is introduced in the commit, offering an optimization hint specifically for IPsec cases. When enabled, the PMD copies AAD directly before Payload in the enqueue_burst function instead of employing the UMR WQE. Subsequently, in the dequeue_burst function, the overridden IV before Payload is restored from the GGA WQE. It's crucial for users to avoid utilizing the input mbuf data during processing. v3: add limitation for non-contiguous inputs. v2: rebase version Suanming Mou (2): crypto/mlx5: optimize AES-GCM IPsec operation crypto/mlx5: add out of place mode for IPsec operation doc/guides/cryptodevs/mlx5.rst | 24 +++ doc/guides/rel_notes/release_24_07.rst | 4 + drivers/crypto/mlx5/mlx5_crypto.c | 22 ++- drivers/crypto/mlx5/mlx5_crypto.h | 19 ++ drivers/crypto/mlx5/mlx5_crypto_gcm.c | 245 +++++++++++++++++++++++-- 5 files changed, 293 insertions(+), 21 deletions(-) -- 2.34.1