From patchwork Thu Jan 27 15:39:30 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Michael Baum X-Patchwork-Id: 106619 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 84228A04A6; Thu, 27 Jan 2022 16:40:02 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 3E582427C8; Thu, 27 Jan 2022 16:40:02 +0100 (CET) Received: from NAM12-BN8-obe.outbound.protection.outlook.com (mail-bn8nam12on2054.outbound.protection.outlook.com [40.107.237.54]) by mails.dpdk.org (Postfix) with ESMTP id 714A24067C for ; Thu, 27 Jan 2022 16:40:00 +0100 (CET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=P9e6mpDXgAUVID9KoBaQSB/LbWreT/I/gY4DQ9+tXVC42eNOvHZdTjWYqnemw3IRnk/uSUR9gfKOjYvH070AasuEgVF8im8blfD3pK0iCc63qqrku7XnZsyiFCTY1JuZS7Lx0wcwfJOSRPk7/e9A5Jw/4GHg2EHejQfYTBBvIcjfd9kzC6Gd3XETZQljTjDIqXt73J4pU/cR1csekVhKKcEWBSTImjyejNtttmuLGV5L8eXG+09t5BCsLx6+0Iec5IewGlRCLEQq5orDGZv9nI2wGyl43Fvpo/kcezxGvUMqzAA2nM7MEWuETbFzXYi+YQ/w4ww04psc1MJ8L/8w+w== 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=/+4LW3Bo4knIfvi7lN3lNIyzMV4/cwbLW5e1aS+DrLk=; b=idmJ1t2xXB3M+EivsQTt1KRmF8AKLK984NNaxoN4Wd4AWJdpsCDv22odu7p+V83HIZlJ56J9VtFoKgUNBin3+QHVAz1qQGykp79JtL2dj6Xb+wRMY8uxL7hEOPHskl7bs+LVucx8Vjyf/nHN+6tAAiFgqMztUvSTPK966o4y9cqpWu5qn2yVREEbYvIJfBfd2no87mSWvceGwjsXTnvkVPsVB3/itFULytt0k7py/iV84PmLooV+ALqMasR+sX/NTbGYC4z+haSN2UlsZOZ6lmEzHPSvF5vb97IqIZVaWSR8YX3FRLA+8Hlf7RGxq+cmy5QO9oaH6ckK5wJfcSTMGw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 12.22.5.236) 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=/+4LW3Bo4knIfvi7lN3lNIyzMV4/cwbLW5e1aS+DrLk=; b=StAlfsXc38OZZEGdgkb8+y34bgcfNG65FjoKjW60Yk2vUliQepqWmNXkDv6/whrY78EurJmYM2kVsOBD5E3Rt61uV6WrYocD+uqlDTXdBupnNLASF7kqOcrsXgu1YsodG+Pq3PzLHteWAItr7Q9IKkjerZ5zopyg8fJs4ASnh6SHIvza09Jipql7eY8Gh7ISfqvWupzCfzyP9qdgJqgW+wzqgaWaTufiXA/1YoMCQHr2vCWk12Z1ol1KmqvJ27FCqLhZORaUKVoXDzgSyHsSFove1SLcbhmqoaNYTmZ0EctN4XaAI/h+n4yybBKr3mkp1DNEa3vWslyb83RSr9lGPA== Received: from BN0PR08CA0020.namprd08.prod.outlook.com (2603:10b6:408:142::8) by BY5PR12MB4305.namprd12.prod.outlook.com (2603:10b6:a03:213::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4930.15; Thu, 27 Jan 2022 15:39:58 +0000 Received: from BN8NAM11FT051.eop-nam11.prod.protection.outlook.com (2603:10b6:408:142:cafe::8) by BN0PR08CA0020.outlook.office365.com (2603:10b6:408:142::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4930.15 via Frontend Transport; Thu, 27 Jan 2022 15:39:58 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 12.22.5.236) 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.236 as permitted sender) receiver=protection.outlook.com; client-ip=12.22.5.236; helo=mail.nvidia.com; Received: from mail.nvidia.com (12.22.5.236) by BN8NAM11FT051.mail.protection.outlook.com (10.13.177.66) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.4930.15 via Frontend Transport; Thu, 27 Jan 2022 15:39:57 +0000 Received: from drhqmail203.nvidia.com (10.126.190.182) by DRHQMAIL109.nvidia.com (10.27.9.19) with Microsoft SMTP Server (TLS) id 15.0.1497.18; Thu, 27 Jan 2022 15:39:56 +0000 Received: from drhqmail202.nvidia.com (10.126.190.181) by drhqmail203.nvidia.com (10.126.190.182) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.9; Thu, 27 Jan 2022 07:39:55 -0800 Received: from nvidia.com (10.127.8.13) by mail.nvidia.com (10.126.190.181) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.9 via Frontend Transport; Thu, 27 Jan 2022 07:39:54 -0800 From: Michael Baum To: CC: Matan Azrad , Raslan Darawsheh , Viacheslav Ovsiienko Subject: [PATCH 00/20] mlx5: refactor devargs management Date: Thu, 27 Jan 2022 17:39:30 +0200 Message-ID: <20220127153950.812953-1-michaelba@nvidia.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 9329a2d9-1ca7-41c4-3bb6-08d9e1ab45d1 X-MS-TrafficTypeDiagnostic: BY5PR12MB4305: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: ZRpIWQyfL551lXR5e5jd8fFiFGy19SkXhmEbUOFGd00msMa9HgRG5mqiaAloJL7itqFKe4HydZmP0RzMyP2m8gQ/2mFTAAdN6WB77UYGUEVQfzQjHjmI/Pe7hR5AyNmoq0L/6q9vzN2S/80wYS1TRGSS/YSiWtWWLW1/7cYjOrcFz82Ue6jsxgiZ/VAC20s1GelQsQ9hGYi5WCqNlc4sPY+EtOaQY/ns7galUiOv1MAS4+diOBBi9YUxihJDeJfgfuWuZWV/ShLQPP4QA3l+ZcYhuPW17DB6/TINz4PhlAzn3fK1w/i2++XnY+dGPDc1PkV5BSwB1e26hlS35j80oErYOYhHweXMsKctbs1WMI5fF1IVCFRDegETK/zK6EcbnT/sBHTavO5Ar1RaBoqpUYPDpzwnDqeXu2cnRABgQWUL27qngVeQxEzF75AI/KCzXvCX5nbWA4qkiWu1la233+6Dq60fLZqRoSDOTV6iCACfEYVplODK6xX2M8gO/fjxUyr0/gAv6qEjQiBWDWbJQrlV7+eRxsmR3r6pzybxEp5pA4RVI4fB7is6pXbxgVWs6x0wF2wo8Gr/wVwmcX5QRj9l8kGP4Czkduie3ktSevj/Y8rLqAB293Wnp3qi4ICpro92ebWPk3JYjedAOr4wnwH4A3F8kE/fkfekiP/gp36h1qS5bytuyiFu9kYbycoizAfYOpx/fcPeGi5gfJ1dkA== X-Forefront-Antispam-Report: CIP:12.22.5.236; CTRY:US; LANG:en; SCL:1; SRV:; IPV:CAL; SFV:NSPM; H:mail.nvidia.com; PTR:InfoNoRecords; CAT:NONE; SFS:(13230001)(4636009)(40470700004)(36840700001)(46966006)(47076005)(107886003)(83380400001)(356005)(81166007)(70586007)(36860700001)(82310400004)(70206006)(8676002)(316002)(7696005)(426003)(1076003)(86362001)(2906002)(8936002)(5660300002)(4326008)(6916009)(55016003)(54906003)(508600001)(40460700003)(36756003)(2616005)(336012)(186003)(6286002)(26005)(6666004)(36900700001)(20210929001); DIR:OUT; SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Jan 2022 15:39:57.4758 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 9329a2d9-1ca7-41c4-3bb6-08d9e1ab45d1 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.236]; Helo=[mail.nvidia.com] X-MS-Exchange-CrossTenant-AuthSource: BN8NAM11FT051.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR12MB4305 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 These patches rearrange the management of the devargs on two different levels. The first splits the net driver's devargs into two categories, device-dependent devargs and port-dependent devargs. Arguments that depend on the device are updated once in the creation of the shared device context structure, and do not change even if the user has sent new devargs in the probe again. In contrast, the arguments that depend on the port are updated separately for each port. The second layer deals with the parsing of devargs in the common driver. The common driver once parses the devargs into a dictionary, then sends it to all the drivers that will use it during the their probing. Each driver updates within dictionary which keys it has used, then the common driver checks the updated dictionary and reports about unknown devargs. Michael Baum (20): net/mlx5: fix wrong check sibling device config mismatch net/mlx5: fix ineffective metadata argument adjustment net/mlx5: fix wrong place of ASO CT object release net/mlx5: fix inconsistency errno update in SH creation net/mlx5: remove declaration duplications net/mlx5: remove checking devargs duplication net/mlx5: remove HCA attr structure duplication net/mlx5: remove DevX flag duplication net/mlx5: remove Verbs query device duplication common/mlx5: share VF checking function net/mlx5: share realtime timestamp configure net/mlx5: share counter config function net/mlx5: add E-switch mode flag net/mlx5: rearrange device attribute structure net/mlx5: concentrate all device configurations net/mlx5: add share device context config structure net/mlx5: using function to detect operation by DevX net/mlx5: separate per port configuration common/mlx5: add check for common devargs in probing again common/mlx5: refactor devargs management drivers/common/mlx5/mlx5_common.c | 345 +++++++-- drivers/common/mlx5/mlx5_common.h | 51 +- drivers/common/mlx5/mlx5_common_pci.c | 18 + drivers/common/mlx5/version.map | 3 + drivers/compress/mlx5/mlx5_compress.c | 38 +- drivers/crypto/mlx5/mlx5_crypto.c | 39 +- drivers/net/mlx5/linux/mlx5_flow_os.c | 3 +- drivers/net/mlx5/linux/mlx5_os.c | 885 +++++++++--------------- drivers/net/mlx5/linux/mlx5_verbs.c | 9 +- drivers/net/mlx5/linux/mlx5_vlan_os.c | 3 +- drivers/net/mlx5/mlx5.c | 872 +++++++++++++++++------ drivers/net/mlx5/mlx5.h | 216 +++--- drivers/net/mlx5/mlx5_devx.c | 19 +- drivers/net/mlx5/mlx5_ethdev.c | 31 +- drivers/net/mlx5/mlx5_flow.c | 50 +- drivers/net/mlx5/mlx5_flow.h | 2 +- drivers/net/mlx5/mlx5_flow_dv.c | 93 ++- drivers/net/mlx5/mlx5_flow_flex.c | 4 +- drivers/net/mlx5/mlx5_flow_meter.c | 14 +- drivers/net/mlx5/mlx5_rxmode.c | 8 +- drivers/net/mlx5/mlx5_rxq.c | 49 +- drivers/net/mlx5/mlx5_trigger.c | 35 +- drivers/net/mlx5/mlx5_tx.c | 2 +- drivers/net/mlx5/mlx5_txpp.c | 14 +- drivers/net/mlx5/mlx5_txq.c | 62 +- drivers/net/mlx5/mlx5_vlan.c | 4 +- drivers/net/mlx5/windows/mlx5_flow_os.c | 2 +- drivers/net/mlx5/windows/mlx5_os.c | 342 +++------ drivers/regex/mlx5/mlx5_regex.c | 3 +- drivers/vdpa/mlx5/mlx5_vdpa.c | 32 +- 30 files changed, 1841 insertions(+), 1407 deletions(-)