From patchwork Thu Nov 4 12:33:06 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Xueming Li X-Patchwork-Id: 103747 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 95804A0548; Thu, 4 Nov 2021 13:34:18 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 88F8542701; Thu, 4 Nov 2021 13:34:18 +0100 (CET) Received: from NAM10-BN7-obe.outbound.protection.outlook.com (mail-bn7nam10on2075.outbound.protection.outlook.com [40.107.92.75]) by mails.dpdk.org (Postfix) with ESMTP id D19EC411B8 for ; Thu, 4 Nov 2021 13:34:16 +0100 (CET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=coOcFyRHM3A/CWBuvgyXnv20UTVy6jGGuqluwwnfEiH446CImEYsG/A583o/KWypY79RVb1JSG7sfnrOOKOZHZ6rfZD30ZZX/+DI3epG5wNK40NO8Bo18LZnUiPAL8MNtaE88efCz82A9br1vw5/HgY4jBLeoQgbt4nB4aZgXQrSTfFXYiMPWhCK7WA26nD5yH14GRO+Bh2ySVqbDEiMxJ+3wsqSRcgR5rDL1oxU54+p6FNqQOIZKfXyU+9l15yqDNoAhHr/uxjznXj0bns8upZOSB2Ko+y2bF9BcZkWnLLFxtsO3dR3K6KyA9HcmfDz56C7oH71WVvJ0SdBgcBCFw== 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=yNDXR6p4HdeQPkhcqhcedfscRR6h3VHWcGbLh69sB+A=; b=ir3gJMQmK8+VzX+z+CtIR+MdJ1y0NS5gAcEQa3KiP5IFkszj+7JrrgsUKGbNnx4fa9oqory30U+qtNUwOpq9tmFxGJ9Bu0JBBMfpVHHBA4cUNzKckXlHaiwARvn3rzySon0fQasy0VTOf6cLoAz1wf+WojCXXVtDyTzcZPBQ34QwW7O388qUHzX8x5E+en8KXk6O+reV1GVi6O/DfMBQGd61w/K8xXbWZKx0sRqp1dgCluDKllsIw2cD7EtnzhNQkFpJcJHhr0jAPxNIemw6mUbmdnICf2PTvQpE2r7x0JW5jo7Olj+rVrUXi1nnyFWM0HvYt2hAxEqLXTKruMzOoQ== 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=quarantine 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=yNDXR6p4HdeQPkhcqhcedfscRR6h3VHWcGbLh69sB+A=; b=hT2bk7AckQ54K/t/MdC8uXoolXnIRDXDAr1fkbTaIIhJm1Jf2kRVkraCIJ0sMzibfuz9CrjKNQSXy89XOV5pLKMowe+8nAm6eXH2m45lmn1jKyDY1QEZFDrBbk2aqL/XWvJAFQV7a73Q2U7z1wYeIEs4S7TP0AImh/TluHz2CTKLvzbp+9t4EqG439TVJ6znjvUCPQ2CY7Ud8S/hA9pUoitkVcXckaRIpmIW1XvhD8D6cg0SFvcIlXV3M428Pr7cQ6qfLaI4RvUNk+9A53H+EffpNBv6VEbymZOd7/wWhzR2izuH6kMSn/XlI9amBbd9N8ivj1eDO6jA9R9QG2rpqw== Received: from BN6PR17CA0058.namprd17.prod.outlook.com (2603:10b6:405:75::47) by MW3PR12MB4473.namprd12.prod.outlook.com (2603:10b6:303:56::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4649.17; Thu, 4 Nov 2021 12:34:15 +0000 Received: from BN8NAM11FT058.eop-nam11.prod.protection.outlook.com (2603:10b6:405:75:cafe::26) by BN6PR17CA0058.outlook.office365.com (2603:10b6:405:75::47) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4669.11 via Frontend Transport; Thu, 4 Nov 2021 12:34:15 +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 BN8NAM11FT058.mail.protection.outlook.com (10.13.177.58) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.4669.10 via Frontend Transport; Thu, 4 Nov 2021 12:34:14 +0000 Received: from nvidia.com (172.20.187.5) by HQMAIL107.nvidia.com (172.20.187.13) with Microsoft SMTP Server (TLS) id 15.0.1497.18; Thu, 4 Nov 2021 12:33:41 +0000 From: Xueming Li To: CC: , Lior Margalit Date: Thu, 4 Nov 2021 20:33:06 +0800 Message-ID: <20211104123320.1638915-1-xuemingl@nvidia.com> X-Mailer: git-send-email 2.33.0 In-Reply-To: <20210727034204.20649-1-xuemingl@nvidia.com> References: <20210727034204.20649-1-xuemingl@nvidia.com> MIME-Version: 1.0 X-Originating-IP: [172.20.187.5] X-ClientProxiedBy: HQMAIL101.nvidia.com (172.20.187.10) To HQMAIL107.nvidia.com (172.20.187.13) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 52d8ca2b-f836-41df-eb80-08d99f8f6978 X-MS-TrafficTypeDiagnostic: MW3PR12MB4473: X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:5797; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: bQ5dqSEd4MQmGXwCVBKWqYOvjwEOkxgyYboqXCx279xsaz+l8o0Khw0lBYMKiA/Z8yefBtDhDUck3XX5aNLZRa/GLPSLupp0ekqAV86i6ZOo9fnSsUlg841WyU8eLNhXNuSgz/AesxQUTrmzWrRDDGAjkOtJRAUyYDb9PC6uNY7FHysEGBaFlmLSWqMudHYciEfSHv6utrloJyTQgLd9jLhbJNeX2AsDtgpV20yZzwz27o3wqeMBtkdQb4SkLhpYT0gjHD99or3nFfTvEQweZbU2B2EWdpD7nEY+YJ3WaP2WJedpEneeh1A2wyrR7dKYLw0s3aUr3w31pe7CJPsu7qelczvHnJ5SlZ8zVzYdW1sscCvmNFkjJRG2OErhwVM7wKdhRa4RQ5QP2WqF2WPhyNav3W3KDQowFjV6Ae5TGgmZA11iHwn+0//Y34rsR9bre9KyFN7jFSjm0yiK8110OOT04Tbg7uzizYck5BVsNsthkgHvcKVIFBIOzJWJHqesxVTmQYWEYqutOCNCX1Fv/TZx8jfCX8V6XEjHme0N06c5oKK/vKNCBMZ2C8NrLa32iMD8DKuz2dkPIvKIE+e1F87FD2G0kWfGNAvudz90TsyTAnQRIlWs/7aETjtOznt5zhlPagDGrjfcfDd6PSbLenor++98X2x8LEwM85gqs5ahjvOM3JmxpSzQ4J07oBS9yJtQfa02/HCxAa1+q3Cd0A== 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)(36840700001)(46966006)(107886003)(508600001)(186003)(2906002)(82310400003)(5660300002)(426003)(26005)(6666004)(83380400001)(7696005)(7636003)(55016002)(4326008)(2616005)(16526019)(336012)(47076005)(8676002)(1076003)(54906003)(6916009)(316002)(356005)(36860700001)(6286002)(36756003)(70586007)(86362001)(70206006)(8936002); DIR:OUT; SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Nov 2021 12:34:14.6588 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 52d8ca2b-f836-41df-eb80-08d99f8f6978 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: BN8NAM11FT058.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW3PR12MB4473 Subject: [dpdk-dev] [PATCH v4 00/14] net/mlx5: support shared Rx queue 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" Implemetation of Shared Rx queue. v1: - initial version v2: - rebased on latest dependent series - fully tested - support share_qid of RxQ configuration v3: - internally reviewed - removed MPRQ support - fixed multi-segment support - fixed configure not applied after port restart v4: - rebase with latest code Viacheslav Ovsiienko (1): net/mlx5: add shared Rx queue port datapath support Xueming Li (13): common/mlx5: introduce user index field in completion net/mlx5: fix field reference for PPC common/mlx5: adds basic receive memory pool support common/mlx5: support receive memory pool net/mlx5: fix Rx queue memory allocation return value net/mlx5: clean Rx queue code net/mlx5: split Rx queue into shareable and private net/mlx5: move Rx queue reference count net/mlx5: move Rx queue hairpin info to private data net/mlx5: remove port info from shareable Rx queue net/mlx5: move Rx queue DevX resource net/mlx5: remove Rx queue data list from device net/mlx5: support shared Rx queue doc/guides/nics/features/mlx5.ini | 1 + doc/guides/nics/mlx5.rst | 6 + drivers/common/mlx5/mlx5_common_devx.c | 295 +++++++++-- drivers/common/mlx5/mlx5_common_devx.h | 19 +- drivers/common/mlx5/mlx5_devx_cmds.c | 52 ++ drivers/common/mlx5/mlx5_devx_cmds.h | 16 + drivers/common/mlx5/mlx5_prm.h | 93 +++- drivers/common/mlx5/version.map | 1 + drivers/net/mlx5/linux/mlx5_os.c | 2 + drivers/net/mlx5/linux/mlx5_verbs.c | 169 +++--- drivers/net/mlx5/mlx5.c | 10 +- drivers/net/mlx5/mlx5.h | 17 +- drivers/net/mlx5/mlx5_devx.c | 270 +++++----- drivers/net/mlx5/mlx5_ethdev.c | 21 +- drivers/net/mlx5/mlx5_flow.c | 47 +- drivers/net/mlx5/mlx5_rss.c | 6 +- drivers/net/mlx5/mlx5_rx.c | 31 +- drivers/net/mlx5/mlx5_rx.h | 45 +- drivers/net/mlx5/mlx5_rxq.c | 630 +++++++++++++++++------ drivers/net/mlx5/mlx5_rxtx.c | 6 +- drivers/net/mlx5/mlx5_rxtx_vec.c | 8 +- drivers/net/mlx5/mlx5_rxtx_vec_altivec.h | 14 +- drivers/net/mlx5/mlx5_rxtx_vec_neon.h | 12 +- drivers/net/mlx5/mlx5_rxtx_vec_sse.h | 8 +- drivers/net/mlx5/mlx5_stats.c | 9 +- drivers/net/mlx5/mlx5_trigger.c | 155 +++--- drivers/net/mlx5/mlx5_vlan.c | 16 +- drivers/regex/mlx5/mlx5_regex_fastpath.c | 2 +- 28 files changed, 1377 insertions(+), 584 deletions(-)