From patchwork Thu Jul 29 12:26:43 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Slava Ovsiienko X-Patchwork-Id: 96396 X-Patchwork-Delegate: rasland@nvidia.com 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 4D717A034F; Thu, 29 Jul 2021 14:27:04 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 1598C40DFB; Thu, 29 Jul 2021 14:27:04 +0200 (CEST) Received: from NAM04-MW2-obe.outbound.protection.outlook.com (mail-mw2nam08on2061.outbound.protection.outlook.com [40.107.101.61]) by mails.dpdk.org (Postfix) with ESMTP id 81DE040687; Thu, 29 Jul 2021 14:27:02 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=OXOtRbmzKwKobhSpItgBfc6IBFVHQuX7LrvRmhsNPwrno95fTn6ZvY1t5mkLw44/Admibe25cL3hYAaeoQQrOHR83P7cDbLoUHq0s3kko6CVELEtYB2dcEUQbayjyoX1D/m06k5fUOU+UAm7hbJCU61pOynT0uEt0XO5EWDrAA4HsdoxK0kI+6aYK/CwkCoBTz4FLM2w7+BvMAD9QoAlVg0//gap9Ogw+cWxDsFFHqnmoeOvQWqArLNsQhmcYFA4RNgvQKDpbuMdbAA0071xIkhbn9c0cUoyy1pxexX9Jt55deumE3ux0Mb4Iq16zkcnSzDBajTstJo842fZ4n8C8g== 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-SenderADCheck; bh=DRb5NSj+KnCac7kmxeFPXoN1x1bnpYc1yV+SZ6NJVJA=; b=KVMyReeXR+s4ac1fzKbDfDnsTJjyvytNawJ+13J5qzeJWZgitD4j/xSjInOEqEExva7nnYkvy1EN6HwwjMm6XDa7nIvr1kH4+n54unq6++Rwk2IAxBzFKP0sHUqP3gxa822OlR3UypoJbHybP+Ow0vnoF3uS+53eZlb/9vozqjDPAA+BBUb6gws6AJBKOyYue9KeSwZ0LEQavX342qNcxu00q2fg10pI42fQe1+C6utkYdaXvg6k2N0fB0WmzNaEz3jbDn6pYFIa1DtgAGY2/efy4C3hFYXwotIQyUqlBg8m+2Dm3YjFsYrjb8sHFTrqTYL8IG+2i1IcEtjpWMyuYw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 216.228.112.34) smtp.rcpttodomain=dpdk.org smtp.mailfrom=nvidia.com; dmarc=pass (p=quarantine sp=none 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=DRb5NSj+KnCac7kmxeFPXoN1x1bnpYc1yV+SZ6NJVJA=; b=jq4Zhigai3S0mAHa61IZmd3gdA5+JwFDbUjEyIRoqnV8Hasf889dEc3GTEjHWbzL7KWv9ugv69Hlql8/b/4ujRfOwhTKbp70QJaaiS2tJLKne0dTdMhjnsXvaHQnfWyhruiJED4zHe8c8n6mi1Q4w3vg5xt6td5BBGoQRQSlihLwvA9ENMRV+ayf4nNOZp1jrCmf9Pb8bfJWwCVSx2d0otzGGkpf7SpZL0gEVLYXKl4AAnp9LJkr+6HXJgSilFLosCuTdbXJEA3nJw5bX8WW4rVcua5GobO967KmJTsCLeopzEw1d9WEbLWRdg8Ml3tJnybNb+6mmJXqAaHLc53OJg== Received: from MWHPR17CA0091.namprd17.prod.outlook.com (2603:10b6:300:c2::29) by MWHPR12MB1181.namprd12.prod.outlook.com (2603:10b6:300:e::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4373.19; Thu, 29 Jul 2021 12:27:00 +0000 Received: from CO1NAM11FT021.eop-nam11.prod.protection.outlook.com (2603:10b6:300:c2:cafe::c4) by MWHPR17CA0091.outlook.office365.com (2603:10b6:300:c2::29) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4373.18 via Frontend Transport; Thu, 29 Jul 2021 12:27:00 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 216.228.112.34) smtp.mailfrom=nvidia.com; dpdk.org; dkim=none (message not signed) header.d=none;dpdk.org; dmarc=pass action=none header.from=nvidia.com; Received-SPF: Pass (protection.outlook.com: domain of nvidia.com designates 216.228.112.34 as permitted sender) receiver=protection.outlook.com; client-ip=216.228.112.34; helo=mail.nvidia.com; Received: from mail.nvidia.com (216.228.112.34) by CO1NAM11FT021.mail.protection.outlook.com (10.13.175.51) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.4373.18 via Frontend Transport; Thu, 29 Jul 2021 12:27:00 +0000 Received: from nvidia.com (172.20.187.6) by HQMAIL107.nvidia.com (172.20.187.13) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Thu, 29 Jul 2021 12:26:58 +0000 From: Viacheslav Ovsiienko To: CC: , , Date: Thu, 29 Jul 2021 15:26:43 +0300 Message-ID: <20210729122643.24865-1-viacheslavo@nvidia.com> X-Mailer: git-send-email 2.18.1 MIME-Version: 1.0 X-Originating-IP: [172.20.187.6] X-ClientProxiedBy: HQMAIL107.nvidia.com (172.20.187.13) To HQMAIL107.nvidia.com (172.20.187.13) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 6a43c4e7-d99f-40f8-eb84-08d9528c2a2d X-MS-TrafficTypeDiagnostic: MWHPR12MB1181: X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:8882; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: bjYHsdqkFyr6os68Hhr0/6D1OBrF+V9EllelVsy90v5chX5JW/h/Z2ODeLLFQC6W37UOYO37WCzzJ5zuVVLyyl16eURSprs1/yBlfUA6uQa5AOO0iIQyUkvD26Z9JGkZGRsXoKE/SEthO/dfUqKS8Nw2CYCl2tuDCitMbJ5nfLM7IndEt3Gi8pikUEu9R1wezAkU+zIkZUqdxmyMx9a4SpwMfU5UWRgOg6dckidAfFTqTnhzriL4iFHxJaBSnrmF8Iq/sxb6hz1uScVeXfws3U5PzfU9AkZgkc1nMoFtnYk9WD74A69rnfz2xM/KMIo77x/WdEf7TnHPgRT4c4SsmytlaZajmNA/ysc04PAHVbn3LhAF/sBVpCqBTsCCzDzulZw6G9oTRxq3SJlyinRvkRneZ9CcpYLgD4r+kxpvyr7qblQUnjNpYboLSRBW9PX4D+qUZ1CxWPx0v9dIXdJdrfoutMlxx6KrbXzcFw+ATZJGJqudZOcE2Gv/fMZc0dkcNVlMWccwyy42/vZdIvCR2jcJp1Vy1cMnxz1ihmPRESoXX2ilRipJpgzw+ZWW5KOT1m+KTam/+70thd4mkWjYdYCUiuWn3S5Q0QFzk9RpxlHmzrBnhXKwf2qvkWkZDGmwI4F7oEQqg/mJh6EqMRQAWdcPi7u85mGIUKJNBRXNLamXhHdLT4U/S9yQQcUAlKrJqV81ocom7h2rUeeGd+mChg== X-Forefront-Antispam-Report: CIP:216.228.112.34; CTRY:US; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:mail.nvidia.com; PTR:schybrid03.nvidia.com; CAT:NONE; SFS:(4636009)(396003)(346002)(376002)(39830400003)(36840700001)(46966006)(450100002)(26005)(70586007)(70206006)(54906003)(356005)(55016002)(16526019)(336012)(5660300002)(1076003)(4326008)(36756003)(186003)(8676002)(6286002)(36906005)(83380400001)(8936002)(2616005)(426003)(7696005)(86362001)(2906002)(6916009)(36860700001)(82310400003)(508600001)(47076005)(7636003)(6666004); DIR:OUT; SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Jul 2021 12:27:00.5078 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 6a43c4e7-d99f-40f8-eb84-08d9528c2a2d X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a; Ip=[216.228.112.34]; Helo=[mail.nvidia.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT021.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR12MB1181 Subject: [dpdk-dev] [PATCH] net/mlx5: fix Tx queues creation type check for scheduling 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 Sender: "dev" The send scheduling on timestamp offload requires the Send Queue (SQ) shares its User Access Region (UAR) with the pacing Clock Queue. The SQ can be created by mlx5 PMD either with DevX or with Verbs. If the SQ is being created with DevX the dedicated UAR can be specified and all the SQs share the single UAR. Once SQ is being created with Verbs the SQ's UAR is allocated by the rdma-core library internally on its own and there are no UAR sharing. This caused hardware errors on WAIT WQEs and overall send scheduling malfunction. If SQs are going to be created with Verbs and the send scheduling offload is explicitly requested via tx_pp devarg the device probing is rejected as device configuration can't satisfy the requirements. Fixes: 3ec73abeed52 ("net/mlx5/linux: fix Tx queue operations decision") Fixes: 8f848f32fc24 ("net/mlx5: introduce send scheduling devargs") Cc: stable@dpdk.org Signed-off-by: Viacheslav Ovsiienko --- drivers/net/mlx5/linux/mlx5_os.c | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/drivers/net/mlx5/linux/mlx5_os.c b/drivers/net/mlx5/linux/mlx5_os.c index aa5210fa45..e3c949ffc8 100644 --- a/drivers/net/mlx5/linux/mlx5_os.c +++ b/drivers/net/mlx5/linux/mlx5_os.c @@ -1769,6 +1769,24 @@ mlx5_dev_spawn(struct rte_device *dpdk_dev, } else { priv->obj_ops = ibv_obj_ops; } + if (config->tx_pp && + (priv->config.dv_esw_en || + priv->obj_ops.txq_obj_new != mlx5_os_txq_obj_new)) { + /* + * HAVE_MLX5DV_DEVX_UAR_OFFSET is required to support + * packet pacing and already checked above. Hence, we should + * only make sure the SQs will be created with DevX, not with + * Verbs. Verbs allocates the SQ UAR on its own and it can't + * be shared with Clock Queue UAR as it required for the + * Tx scheduling feature. + */ + DRV_LOG(ERR, "Verbs SQs, UAR can't be shared" + " as required for packet pacing"); + err = ENODEV; + goto error; + err = ENODEV; + goto error; + } priv->drop_queue.hrxq = mlx5_drop_action_create(eth_dev); if (!priv->drop_queue.hrxq) goto error;