From patchwork Wed May 3 11:49:20 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Tal Shnaiderman X-Patchwork-Id: 126673 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 C2B3642A4E; Wed, 3 May 2023 13:50:52 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 23CB742C76; Wed, 3 May 2023 13:50:47 +0200 (CEST) Received: from NAM10-MW2-obe.outbound.protection.outlook.com (mail-mw2nam10on2065.outbound.protection.outlook.com [40.107.94.65]) by mails.dpdk.org (Postfix) with ESMTP id 266F542D12 for ; Wed, 3 May 2023 13:50:46 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=dQWLX26Am1QQQxRKKzCZIQbeTV5SaxMF/WQp2D8yn0zsRmpSUl9RmfBeaKdKA1vOTPPTFKcAb1IhjvmPcy/c3o5Gr7scwh0YgJsPRj30/U02EkdY7TQpildcsoY3IZKzfHnjZ602xdK8ucuEoUqR5m+D+9ljFHCA3YbzQEA+l22ic9MJjzYTyvcvTcADUw/G87hrbw00Eki9aMqCWQNOC3ipJu+atPJovV/RlzxvqkzB/HmQhFDO07TOupAaUY64vmOJncWVes71XXgm/UuSR0kP8Sijshzpohwc/aDbyyvNBUjyBCnbC/ACVleemwHwfP63z5q64jPPpE7jCMQtHg== 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=xVFLSacvd7FSUbgxgJZjVfI7P3WVne1whRBEQAu10fc=; b=dKhK7jSx1SMarMN7NhWI/vvOz1jfrM3/BQgwIj/2To8bFEZ3XJRq9FkLrncl8LLN+O0M55vTEmeFvyY23la2uyiv4kFd45zlt0NdeqaiwvrHucVBkFMptbfuQq3LvCrmp9q4RO/WPfyQIPoXC05/OsG2ISPbrwZw6eDhv80HOikk+YpPL51FoaHN109L4ivVmZzh2h5dzVAy6idsUwLwHt8GaEN7XCaoIPwrL+CtUSOquFsayEEgC9Ofx7EEnFRK1nV++0hWw0csl85JtIST7YVFY2/ceDzFCpgOkT9qRh5kspNlX9dI+O5RgjafTw8A4f8NIK2PXjg4AUFs4B5TVA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 216.228.117.161) 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=xVFLSacvd7FSUbgxgJZjVfI7P3WVne1whRBEQAu10fc=; b=HvZPMGyCzuva38UEqrmcL2Wv+m2es+Q1pfwvP5RsmaHWEKes7+EQgDWGAQ3G/WGqhxAc6f1n4CbF1gbrkvYzakokuLzBEtyjRF/fdcpS/yPp8P2XKnSKzS+T8AU2Yy9fNjnx+Cy3qe4l0+7wRoCKm4saO5OOJXTdTyeD3Jz1nxCBwIihMGfgTDlBFDbvYp8cJtctf1jesyjL9bqhIY77Ly1bQnVoYBpAcMXETZ7Wrd95kSbMttgWju1ZaKfNY2UmeV/xc9rij6+2fNYl7ePAPN/4teH7IwA9Yv5mux1jyIOhRze/dZR0U1K9NEzEuR2JvZ4945sgMuIsrSNrt8Jwxw== Received: from CY5PR19CA0120.namprd19.prod.outlook.com (2603:10b6:930:64::10) by MW4PR12MB7167.namprd12.prod.outlook.com (2603:10b6:303:225::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6363.22; Wed, 3 May 2023 11:50:43 +0000 Received: from CY4PEPF0000E9CE.namprd03.prod.outlook.com (2603:10b6:930:64:cafe::2c) by CY5PR19CA0120.outlook.office365.com (2603:10b6:930:64::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6363.25 via Frontend Transport; Wed, 3 May 2023 11:50:42 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 216.228.117.161) 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.161 as permitted sender) receiver=protection.outlook.com; client-ip=216.228.117.161; helo=mail.nvidia.com; pr=C Received: from mail.nvidia.com (216.228.117.161) by CY4PEPF0000E9CE.mail.protection.outlook.com (10.167.241.141) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6363.21 via Frontend Transport; Wed, 3 May 2023 11:50:42 +0000 Received: from rnnvmail201.nvidia.com (10.129.68.8) by mail.nvidia.com (10.129.200.67) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.5; Wed, 3 May 2023 04:50:29 -0700 Received: from nvidia.com (10.126.231.37) 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.37; Wed, 3 May 2023 04:50:25 -0700 From: Tal Shnaiderman To: CC: , , , , , Subject: [PATCH 2/3] net/mlx5: support CQE compression on Windows Date: Wed, 3 May 2023 14:49:20 +0300 Message-ID: <20230503114921.4588-3-talshn@nvidia.com> X-Mailer: git-send-email 2.16.1.windows.4 In-Reply-To: <20230503114921.4588-1-talshn@nvidia.com> References: <20230503114921.4588-1-talshn@nvidia.com> MIME-Version: 1.0 X-Originating-IP: [10.126.231.37] X-ClientProxiedBy: rnnvmail201.nvidia.com (10.129.68.8) To rnnvmail201.nvidia.com (10.129.68.8) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CY4PEPF0000E9CE:EE_|MW4PR12MB7167:EE_ X-MS-Office365-Filtering-Correlation-Id: a74e035c-42eb-4d4f-16fc-08db4bcc9fa9 X-LD-Processed: 43083d15-7273-40c1-b7db-39efd9ccc17a,ExtAddr X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 3GzWWXdU6U7ZMXexa7Wt3jcPz7Y01jExW0WSOB2+J4YcmDYnk2+xJiUzDMqRjgm5EnK60oVerUQLQZcWvnS0zHejpRXUUJVGweBjFrVnuCm7/2TNwxRtYciESt/5WkipfYUBDe8c9sz70SDR7ulfjpwaYEUefncv3A2yDl1MdF11ykCJuy2p/o6xH78ugXh63ATRhVWrGpsGoWxHN1AxMetY5PvolUeDZFYG+er+gQ3w9TZqmbQNflQ+6LiKxgCWbwb+63RMqR31zLW7uFqswFYNJcxuBiIvd4CT6p3Q7MgI8MoXfxpkLq1SJzkhGo6mgDsht3QfCHFYakC4CTyDv4g2XvFLVAdhauIQwCoKqXEZU7ygYgF4TNlWgus1MMpV9beuf3riyNPz7v/ync/1B28iW0T9jt2FDd5As3a7eajIk7CLjRGN4YjXAFtfu4qdUvHz7UEurLQBUa879X1ndZ1OfmumHfvu4fWjyXoHrYJOiHDD3gkoXpHxvOkByrUcrpdYZIqh4dOH+BWAEUXLViqMLA4PU35MjJQYY0p9CbDmBQdidXNauCGzPFhu1V3zXDS+aJRlHKm0xfIf1I6pfBy5beR+juz5waOpUHLu2qAH/dP38JL292JJSaUivNuyrmWugcgOFc6yGqy5yHIFgprUNIyRmcHoM5Eo0eVlX1zO/zNFqGcG1g9FGeN0A9fnSAZ4SYw3ZH52TRZXcuuYcA== X-Forefront-Antispam-Report: CIP:216.228.117.161; CTRY:US; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:mail.nvidia.com; PTR:dc6edge2.nvidia.com; CAT:NONE; SFS:(13230028)(4636009)(136003)(376002)(346002)(396003)(39860400002)(451199021)(40470700004)(36840700001)(46966006)(5660300002)(107886003)(36756003)(82740400003)(6666004)(478600001)(41300700001)(40480700001)(55016003)(7636003)(356005)(316002)(40460700003)(70586007)(70206006)(8936002)(8676002)(4326008)(6916009)(82310400005)(7696005)(16526019)(6286002)(186003)(336012)(426003)(2616005)(86362001)(36860700001)(54906003)(26005)(1076003)(47076005)(83380400001)(2906002); DIR:OUT; SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 May 2023 11:50:42.6033 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: a74e035c-42eb-4d4f-16fc-08db4bcc9fa9 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.161]; Helo=[mail.nvidia.com] X-MS-Exchange-CrossTenant-AuthSource: CY4PEPF0000E9CE.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR12MB7167 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 CQE Compression reduces PCI overhead by coalescing and compressing multiple CQEs into a single merged CQE. Add supported for the CQE compression feature on Windows. feature is enabled by default unless not supported by the HW or if the rxq_cqe_comp_en PMD argument is explicitly disabled. Signed-off-by: Tal Shnaiderman Tested-by: Pier Damouny --- drivers/common/mlx5/mlx5_devx_cmds.c | 2 ++ drivers/common/mlx5/mlx5_devx_cmds.h | 1 + drivers/net/mlx5/windows/mlx5_os.c | 12 ++++++++++++ 3 files changed, 15 insertions(+) diff --git a/drivers/common/mlx5/mlx5_devx_cmds.c b/drivers/common/mlx5/mlx5_devx_cmds.c index 096bd1d520..a31e4995f5 100644 --- a/drivers/common/mlx5/mlx5_devx_cmds.c +++ b/drivers/common/mlx5/mlx5_devx_cmds.c @@ -1062,6 +1062,8 @@ mlx5_devx_cmd_query_hca_attr(void *ctx, attr->cqe_compression = MLX5_GET(cmd_hca_cap, hcattr, cqe_compression); attr->mini_cqe_resp_flow_tag = MLX5_GET(cmd_hca_cap, hcattr, mini_cqe_resp_flow_tag); + attr->cqe_compression_128 = MLX5_GET(cmd_hca_cap, hcattr, + cqe_compression_128); attr->mini_cqe_resp_l3_l4_tag = MLX5_GET(cmd_hca_cap, hcattr, mini_cqe_resp_l3_l4_tag); attr->enhanced_cqe_compression = MLX5_GET(cmd_hca_cap, hcattr, diff --git a/drivers/common/mlx5/mlx5_devx_cmds.h b/drivers/common/mlx5/mlx5_devx_cmds.h index 9e7992b1c6..edcd867c4e 100644 --- a/drivers/common/mlx5/mlx5_devx_cmds.h +++ b/drivers/common/mlx5/mlx5_devx_cmds.h @@ -284,6 +284,7 @@ struct mlx5_hca_attr { uint16_t max_wqe_sz_sq; uint32_t striding_rq:1; uint32_t ext_stride_num_range:1; + uint32_t cqe_compression_128:1; uint32_t set_reg_c:8; uint32_t nic_flow_table:1; uint32_t modify_outer_ip_ecn:1; diff --git a/drivers/net/mlx5/windows/mlx5_os.c b/drivers/net/mlx5/windows/mlx5_os.c index 0caa8931e4..6527269663 100644 --- a/drivers/net/mlx5/windows/mlx5_os.c +++ b/drivers/net/mlx5/windows/mlx5_os.c @@ -237,6 +237,18 @@ mlx5_os_capabilities_prepare(struct mlx5_dev_ctx_shared *sh) } else { DRV_LOG(DEBUG, "Tunnel offloading is not supported."); } + sh->dev_cap.cqe_comp = 0; +#if (RTE_CACHE_LINE_SIZE == 128) + if (hca_attr->cqe_compression_128) + sh->dev_cap.cqe_comp = 1; + DRV_LOG(DEBUG, "Rx CQE 128B compression is %ssupported.", + sh->dev_cap.cqe_comp ? "" : "not "); +#else + if (hca_attr->cqe_compression) + sh->dev_cap.cqe_comp = 1; + DRV_LOG(DEBUG, "Rx CQE compression is %ssupported.", + sh->dev_cap.cqe_comp ? "" : "not "); +#endif snprintf(sh->dev_cap.fw_ver, 64, "%x.%x.%04x", MLX5_GET(initial_seg, pv_iseg, fw_rev_major), MLX5_GET(initial_seg, pv_iseg, fw_rev_minor),