From patchwork Mon Feb 14 08:56:51 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Slava Ovsiienko X-Patchwork-Id: 107413 Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id F2266A00C4; Mon, 14 Feb 2022 09:57:22 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id B37544068C; Mon, 14 Feb 2022 09:57:22 +0100 (CET) Received: from NAM11-DM6-obe.outbound.protection.outlook.com (mail-dm6nam11on2079.outbound.protection.outlook.com [40.107.223.79]) by mails.dpdk.org (Postfix) with ESMTP id 14FBD4067E for ; Mon, 14 Feb 2022 09:57:21 +0100 (CET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=eiz2dpSPdiSO/afrtV0/DutfKH4pEW5UPouHqabxK2mWam+EiOS2ZAyJyFO08bEC6MC8WCTcG+hKd92fVlKErGYOLefzKMu7Dw7LSXabqUVP9Az9gRnFkvKnP9iXdwIZabvXhucgSgL112AnRe13o9ucUw4ibU91KaEx1WvnJxKHxFQJilyLhOAAp4K5RyZ+MDezGJCwmHZ81MEoXZZSDdXL21TY4X2oRhjTq0e8u97E83I++M/6HRGhw0+P3I+IV3VSARSZgpbNtk7dUauwrYcyFfl3hSg24UuNL+oaaVAQxFsgVCHjb/zOq0lceC5qhYQTWsv1W88qVUhgQHgOyw== 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=wFyQ4FIQsXesle6LPIgcKWwtNdyLl3DWfXooyqpRNJM=; b=cBQMOwap10VV3XJs8/ZGIs66ozQC9GyanewdQ+Wp+f8hN5WXnCn0fQgT0nXQbsPMB0D1jfHIVjngjEqjtwA133EhfcHGX6ahATPFi3Cpt8ERerUo6FdiKoob7zh0nYGCu1l+pd0PEZb7eqTVkYCkm+om9yTqYxEPlt2yjXTcCqwquWAndN8oeG4N2+9R8R4aYtO3c7EZyYa4glfqd+vYsK4Tr9ZT25naotBhpqlNHe+TtNYVd8DI0uL62VorIOr5q7T7UB2TcExL4y9fAxh/t4fiOC3jTwIReqx2mdxBhblBYNhc5w3c7PXQk2BSB762WOeHYKXppkZKi3iyTwA1sg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 12.22.5.235) 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 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=wFyQ4FIQsXesle6LPIgcKWwtNdyLl3DWfXooyqpRNJM=; b=Jdmk7aw0ZWseHl7cLLDrs0ZVhKdVqEqYTzpPgbra6owSuO0u2un0/WJrGlXeKQRGxQeRPiVH/jPDgXTfvIPNFxlJPyhvnwPnRacngQl71I1fkPb6OZd/hUOUFM/IouFAYCr8Sf4DnNy6SEaoRIUtMlZuMnI0sURgTLrLEh1NtDNX2JpPPKC+pIkMToCLs/ZkOQajujraZMth03CRI1x5PiquvksROi7TOIo+z1utDwqE5KMLI4wq/x49YY8pnpkPQaQBshtp0fxoX4rqYJkOu33m8CT92NBocC6wjUgSMscSa63Cv2a7zgXfDXj3MQrGXcLRAqDzPtDoVqpO7XRUAQ== Received: from BN9PR03CA0749.namprd03.prod.outlook.com (2603:10b6:408:110::34) by SA0PR12MB4542.namprd12.prod.outlook.com (2603:10b6:806:73::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4975.11; Mon, 14 Feb 2022 08:57:18 +0000 Received: from BN8NAM11FT022.eop-nam11.prod.protection.outlook.com (2603:10b6:408:110:cafe::6e) by BN9PR03CA0749.outlook.office365.com (2603:10b6:408:110::34) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4975.11 via Frontend Transport; Mon, 14 Feb 2022 08:57:18 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 12.22.5.235) 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 12.22.5.235 as permitted sender) receiver=protection.outlook.com; client-ip=12.22.5.235; helo=mail.nvidia.com; Received: from mail.nvidia.com (12.22.5.235) by BN8NAM11FT022.mail.protection.outlook.com (10.13.176.112) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.4975.11 via Frontend Transport; Mon, 14 Feb 2022 08:57:18 +0000 Received: from rnnvmail201.nvidia.com (10.129.68.8) by DRHQMAIL107.nvidia.com (10.27.9.16) with Microsoft SMTP Server (TLS) id 15.0.1497.18; Mon, 14 Feb 2022 08:57:17 +0000 Received: from nvidia.com (10.126.231.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.986.9; Mon, 14 Feb 2022 00:57:16 -0800 From: Viacheslav Ovsiienko To: CC: , Subject: [PATCH 0/4] net/mlx5: support send scheduling for ConnextX-7 Date: Mon, 14 Feb 2022 10:56:51 +0200 Message-ID: <20220214085655.22648-1-viacheslavo@nvidia.com> X-Mailer: git-send-email 2.18.1 MIME-Version: 1.0 X-Originating-IP: [10.126.231.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-Office365-Filtering-Correlation-Id: f2d58f5e-3ed1-457c-1359-08d9ef98011f X-MS-TrafficTypeDiagnostic: SA0PR12MB4542:EE_ X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:7691; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Enxa5UPLbRiph2hOULwCQTWodzsX5t9jbR6xIP493WhogHNRofNn/uN+kq9InIWCfjEY5O/Cc8uCxcxpmu/5PMEnekPnGF0+9OqbY45u/b9wn0sfq8gmzIiqY8V1B91Zl3JtEjzM+iMWBdn2HwG1gpoarDwvMe+0bimqO47YmqXegKO14IXG5Dye1yBZ0U6Wg+n/hHcVR7hiqbFTBR/oioUETYumCsCq53Vr7l5TRPA6b9ZhKWfwbJDzsNIt4HVUw/LlK2wqAYPoxF/g+GMPMwpQRV5BcyheJSHyNkZE4wwTtBbJyuPDE/vM1wphLWvKOENEdVErxLHinqszhdhcQDLrvdAwvGML9YouGfav4YDdgUmWGHgBT8FyAZZ7HiaLLfTYnzJ/mJ3MgYQjaW3JBB0TfwUzCoXApddXXV9ECLJWE7CEIQoL40TkNNd4Zoxai4+9sM8OnjKTW0hyi6SVMdw02C/h6oNxZTjXx5BL1xJI42X+J6HfnH5bp8isZtzd1eBThHczui3brNlOd0hETp6MhTJgVMH+rwBSLz5p4i/AiJ3IycGUOYxLnmCF6F9vjZLYNBUR3UeIVuVmGkYuQNXwi1oE/yzDzACjGzIY8pxCAbdX4a0jnD78gmsmYAdX+/T8w0VB32QmUUaVrj02798/3t8qho+U7q+OzEkANmWNCZ38KE5w1GFPnXaIc5leWTPsCef0A93XjFU0kCbrhw== X-Forefront-Antispam-Report: CIP:12.22.5.235; CTRY:US; LANG:en; SCL:1; SRV:; IPV:CAL; SFV:NSPM; H:mail.nvidia.com; PTR:InfoNoRecords; CAT:NONE; SFS:(13230001)(4636009)(40470700004)(46966006)(36840700001)(70586007)(70206006)(2906002)(5660300002)(8936002)(8676002)(36756003)(6286002)(1076003)(6666004)(16526019)(186003)(26005)(508600001)(7696005)(2616005)(83380400001)(4326008)(55016003)(336012)(426003)(107886003)(47076005)(356005)(81166007)(40460700003)(86362001)(36860700001)(54906003)(6916009)(316002)(82310400004)(36900700001); DIR:OUT; SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Feb 2022 08:57:18.0954 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: f2d58f5e-3ed1-457c-1359-08d9ef98011f X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a; Ip=[12.22.5.235]; Helo=[mail.nvidia.com] X-MS-Exchange-CrossTenant-AuthSource: BN8NAM11FT022.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA0PR12MB4542 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 Since the ConnectX-6DX the send scheduling capability is provided. An application can register the dynamic field and dynamic flags in mbuf for timestamp and specify the desired moment of time the packet should sent. The send scheduling feature over ConnectX-6DX uses the complicated infrastructure with reference Clock Queue and inter-queue synchronizing operations. Since ConnectX-7 the new wait descriptor format is introduced where the timestamp can be promoted to hardware directly. The patchset adds support for this new hardware option in PMD. Signed-off-by: Viacheslav Ovsiienko Viacheslav Ovsiienko (4): common/mlx5: add send on time capability check net/mlx5: configure Tx queue with send on time offload net/mlx5: add wait on time support in Tx datapath doc: update send scheduling mlx5 feature description doc/guides/nics/mlx5.rst | 5 ++ doc/guides/rel_notes/release_22_03.rst | 6 +++ drivers/common/mlx5/mlx5_devx_cmds.c | 1 + drivers/common/mlx5/mlx5_devx_cmds.h | 1 + drivers/common/mlx5/mlx5_prm.h | 27 +++++++++- drivers/net/mlx5/linux/mlx5_verbs.c | 4 ++ drivers/net/mlx5/mlx5.h | 3 ++ drivers/net/mlx5/mlx5_devx.c | 2 + drivers/net/mlx5/mlx5_tx.h | 75 +++++++++++++++++++++++--- drivers/net/mlx5/mlx5_txq.c | 16 +++++- 10 files changed, 129 insertions(+), 11 deletions(-)