From patchwork Tue Feb 22 10:26:44 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Slava Ovsiienko X-Patchwork-Id: 107953 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 027F4A034F; Tue, 22 Feb 2022 11:27:11 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 85EB240DF6; Tue, 22 Feb 2022 11:27:11 +0100 (CET) Received: from NAM11-BN8-obe.outbound.protection.outlook.com (mail-bn8nam11on2048.outbound.protection.outlook.com [40.107.236.48]) by mails.dpdk.org (Postfix) with ESMTP id 4887740DF4 for ; Tue, 22 Feb 2022 11:27:10 +0100 (CET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Z5pJpsWtNudVwknl1JqAgoR0vj9pOMzCOCwxXReDCq0Yg78dOaeyYwaTdUpyeD6PRaoefVOCZo1BfHL51k2uYNK9bBVLZD6ida0+A+c2rKG+5UFeTty5Wvo0ZTjdckXiIZOrFPKWRXJj66ddAzNnwghbvL37kQYcenb4eBC+fiL/md+hK2HOnXcaxBFDF1IFhkCXUerwqNQcpkFwP/+ufB0yc1rkCKndE3DxA6Q9xqK1/79/9jGRaILXnDiZb/LYTmblafnrlh0YB+718c+wRnH5qXUXeDMteMahfTfY+GW5ZT4InySLbf+LOEnRhblQ53ALVJnHGxOjh0QkDo6UaQ== 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=B6uPwjVJs5oS4WkZzjkSxf5+BAjkbOmUaykefF1UysU=; b=gb6NevH677OdDHEfV00jhAJNeuieMpJKF1vqDK68FuS+M7ChS3kXXdO/aWn+GjrD1WyJ3WLhguISE5fayqipEJB9XJ2rXU8Jd6vqgvw04zSpA4tyuBRGYTKxdKRQwLUQMCyA2yp2AxQcTakT9fnQzQT+pOjDa5F/xYc4MxQyfiOF58qcO8Qv9V3xUfYVN6k2eSytCmQHReVThCuGfiyfsodgjCIyKmFoQg7J+nf6kOY5J6qBpPRefAekU3WodqsiqG0/PqMWTd/Mitkibp9n4ZLBbRCytDGWnYkIC1nDmeL9VGtJoHLe3pkxk4W8fZrAbcLx24xpBmUxwbmODglqIQ== 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=B6uPwjVJs5oS4WkZzjkSxf5+BAjkbOmUaykefF1UysU=; b=q6kW6oh/clNXEbIu89/u/wbfpB9zjXjSY8HMiWlje8rWJT1rJT0FHkz1vXjfy1bc72auRN9uKDINvipHg6S6ZzEASVGmnrH/HbxSZUj8V2eFzerpkn+36+AjLdBBPbpFa7L+04u9jMOSOKn1qBlV97zDf7qFU/0Lvm2MW8rcgf2NpQ57f+Qq3d06qiF/jL5jnybrhTvXHb2BSfBKyKw7AIFDIDEC3Z51mVAyyxloBmFvD0cVETj0cJhazmSGGQ0nhlq8EUb8r7lMlEsaa+xeb7v2ZAKDIrl0J8cJsFJ9KICiZH20Fnbhejsri/ohuWcA7tOjxobqg3/VQm33henVfw== Received: from DM3PR03CA0019.namprd03.prod.outlook.com (2603:10b6:0:50::29) by BYAPR12MB3416.namprd12.prod.outlook.com (2603:10b6:a03:ac::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4995.24; Tue, 22 Feb 2022 10:27:07 +0000 Received: from DM6NAM11FT056.eop-nam11.prod.protection.outlook.com (2603:10b6:0:50:cafe::60) by DM3PR03CA0019.outlook.office365.com (2603:10b6:0:50::29) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4995.20 via Frontend Transport; Tue, 22 Feb 2022 10:27:07 +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 DM6NAM11FT056.mail.protection.outlook.com (10.13.173.99) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.4995.20 via Frontend Transport; Tue, 22 Feb 2022 10:27:06 +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; Tue, 22 Feb 2022 10:27:06 +0000 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.986.9; Tue, 22 Feb 2022 02:27:04 -0800 From: Viacheslav Ovsiienko To: CC: , Subject: [PATCH v2 0/4] net/mlx5: support send scheduling for ConnectX-7 Date: Tue, 22 Feb 2022 12:26:44 +0200 Message-ID: <20220222102648.4662-1-viacheslavo@nvidia.com> X-Mailer: git-send-email 2.18.1 In-Reply-To: <20220214085655.22648-2-viacheslavo@nvidia.com> References: <20220214085655.22648-2-viacheslavo@nvidia.com> MIME-Version: 1.0 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-Office365-Filtering-Correlation-Id: 904443d6-e430-42ba-d276-08d9f5ede049 X-MS-TrafficTypeDiagnostic: BYAPR12MB3416:EE_ X-Microsoft-Antispam-PRVS: X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: bszm5VZG9QhvnUHGwFLp7GCr87U5xG8Vxg8EVmhigic1z01z4b6UJ2htkz9j4R3RWsWTWotWmIrdpD0kaXGIrsvwCRMYFk5g2Gs3jp4dFWqhK/GzbcyFPvhLeF/jzkTnt+CzCl0jVySuI/PTVh+qGGEolwG7ywlL/zZtIyUUUT3vX3kJi4Fx5WTbFGQktudTCu1IR2qOhfSJM/RO0VOWlXJ+VVMMFI/gAsGuCKd0zR2lAsUWaZ2PCVOnYYFHizP9ZDgK2Kq8VHgRygy0xZRmWN1m8zUT08XCTl5MAd7l/0DdEtTR3qyIqSmm1/m/p/LXu4OYYmasDXGDPMPt74Y8OiQOsYvrDjUC3PgecIBmxF6O/hRaJIN1eKNe205s2fYea01zHuC8LU+dhtf6xLGsBFBEd64zmE66Jw5Wh5oTMpidICSpFjA85xHd6l5fZzabdunigQgWQI/YXq2VvE+rvmCE5FKs0B5ZH1c0z/Eku1KP+ET00PhE/70p8HTUXlZ5ZSjds1/PwZMsK2yToBo5rE8khMLsxTFOCi10AKkHzQJkisABaAh2AdcmxGdslp3vP2G4Ez+malVWo6EcRSlSt7Pf8xUGPR5Y84XOq3E3S5MlUlaFA0f7q6VSjCsLJdUfu9PLSkJJj5mUbOtgDQsK7Hyg1/9eDoQa6cwcJnIDZtXP1CpJVF39EFisnHtuxr3cBhauiD/4Kr0wxD7xhqcQ74izQh0TnKl+Op67KDyKkrG9f6I+G8BwkNDfOQNCWjHkh+hkRW236sEAHREr9sdZotUn3ZISrfBqtwJkbCuv0so= 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)(36840700001)(40470700004)(46966006)(36756003)(2906002)(426003)(6666004)(4326008)(81166007)(107886003)(1076003)(26005)(86362001)(16526019)(186003)(336012)(70586007)(6286002)(82310400004)(8676002)(508600001)(966005)(2616005)(7696005)(70206006)(356005)(5660300002)(8936002)(47076005)(83380400001)(36860700001)(40460700003)(55016003)(316002)(54906003)(6916009)(36900700001); DIR:OUT; SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Feb 2022 10:27:06.7530 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 904443d6-e430-42ba-d276-08d9f5ede049 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: DM6NAM11FT056.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR12MB3416 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 v1: http://patches.dpdk.org/project/dpdk/cover/20220214085655.22648-1-viacheslavo@nvidia.com/ v2: - fix compilation issues - rebase 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 | 18 ++++++- 10 files changed, 131 insertions(+), 11 deletions(-)