From patchwork Tue Oct 31 14:27:25 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dariusz Sosnowski X-Patchwork-Id: 335 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 5E46E43252; Tue, 31 Oct 2023 15:28:31 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 5ADF640E54; Tue, 31 Oct 2023 15:28:21 +0100 (CET) Received: from NAM02-BN1-obe.outbound.protection.outlook.com (mail-bn1nam02on2072.outbound.protection.outlook.com [40.107.212.72]) by mails.dpdk.org (Postfix) with ESMTP id D8D1140E36 for ; Tue, 31 Oct 2023 15:28:19 +0100 (CET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=PGX979iV458idLOtrFYm7Q3mc+rxl7AlnHux7g6qpb2raI8Qkho3GTByuAoFSyliSx/1A+v5sQ+UOqpgNemjhduSS9ZL9C3SRMBUpEjFWfhxWtktChfLOjGKW91AM2id5qfjVW7QKHaccU27CJizuvJGDgpUtuwqrptI5iUbZY46eIvAHEYi6HKZY9RLMvPmb+0CXkb4zo7GFWrQoq2G0hUPN9kLeySPfzFXYtPWd/O0T4k91ToEi2+zfdQMN3dqbewh7RNN8JLREN2aumUrbMhQM9UamxGp6DlJxkGX1aVBXM0T0sEo7K0+4K+Xy2BnpVMfOUMZWb5enh5n9C2D9g== 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=cjF1qAdZP3/FnQYzaLMdK1Bah5gXLgpLMYYMG7iISQ4=; b=IBsLXGdVkrgF25WKGTKNsr0L7w1DbbQFhEnUVJx5/A2aZ9AzDyWB9Ld0D2Xdw6IibWe9OFE/NnvT9ygqS/Z9owsEeflhZ/If1Ge60DqJpIAZeSRkI7GQ/qx08WVNOww7L87MWZiPuwcm+q9SPJ98DRQ2JUfCzq3VXrY55uPD4KX/U/yEfLbAVGMQTnwLEl1DLQiNvx0slveAa8omEt+amzj0YYP5Vi1+17UADCjzJ+A9bESWLvlbfOp+VpgUXJGjEKIOVUksG/KDPren9MMbZvALfH6inqEgDHvuzgY07kTR7PAMT06rgqCop4YZbkfPvORFAoEULYET+fwftm5nDw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 216.228.117.160) 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 (0) 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=cjF1qAdZP3/FnQYzaLMdK1Bah5gXLgpLMYYMG7iISQ4=; b=njwCPMISMBYziFyevRj5jDkKkb1m4H63oWFPRS8lHSeNnU6kkYL3TaX8/cUtKAJz/kcNxnBezWkJ7E8YsJFQgtq28PPuQSqP2dZZ0MkZKUWadMrC9mTXXYO5pU3SO4mgXGpMTfQqgGqieGOOAmDc+WXOepJsmkWQg6Up8T9O5FNoNflKqXCMCXRsISMx6PhXfpEfCS7oKutZMWUGGk+4hAw4vwGwKm+AY2Pp4Wnikh02YsuXJ4Eyt68jDTMJRSfAjmXtmHW5tw+laQK8NmClQUo4RrzjNhFVJNz4Ct53uybJMVtS+5nbEkBPUMsGQWpj7wwFNT4zBIgXH/uazEGAkg== Received: from MW4PR04CA0257.namprd04.prod.outlook.com (2603:10b6:303:88::22) by CH2PR12MB4103.namprd12.prod.outlook.com (2603:10b6:610:7e::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.29; Tue, 31 Oct 2023 14:28:15 +0000 Received: from MWH0EPF000971E6.namprd02.prod.outlook.com (2603:10b6:303:88:cafe::b9) by MW4PR04CA0257.outlook.office365.com (2603:10b6:303:88::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.29 via Frontend Transport; Tue, 31 Oct 2023 14:28:15 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 216.228.117.160) 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.160 as permitted sender) receiver=protection.outlook.com; client-ip=216.228.117.160; helo=mail.nvidia.com; pr=C Received: from mail.nvidia.com (216.228.117.160) by MWH0EPF000971E6.mail.protection.outlook.com (10.167.243.74) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6954.19 via Frontend Transport; Tue, 31 Oct 2023 14:28:14 +0000 Received: from rnnvmail201.nvidia.com (10.129.68.8) by mail.nvidia.com (10.129.200.66) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.41; Tue, 31 Oct 2023 07:27:51 -0700 Received: from nvidia.com (10.126.231.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.41; Tue, 31 Oct 2023 07:27:49 -0700 From: Dariusz Sosnowski To: Matan Azrad , Viacheslav Ovsiienko , Ori Kam , Suanming Mou CC: , Raslan Darawsheh Subject: [PATCH 0/8] net/mlx5: add Multiport E-Switch support Date: Tue, 31 Oct 2023 16:27:25 +0200 Message-ID: <20231031142733.2009166-1-dsosnowski@nvidia.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 X-Originating-IP: [10.126.231.35] X-ClientProxiedBy: rnnvmail202.nvidia.com (10.129.68.7) To rnnvmail201.nvidia.com (10.129.68.8) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: MWH0EPF000971E6:EE_|CH2PR12MB4103:EE_ X-MS-Office365-Filtering-Correlation-Id: 7f46c2f8-2d74-4fd9-94bd-08dbda1d9e80 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 03RWzGVbyugdrMII7eYpzRowhS7w8H6dIAQwPinD3SNvt+7RqTkD3I6VyFdBU0xxeCDkABvJikO34Yx5EefwE6JNbISTXNx0SVkUusMCw6Ae8bLE5+qFP4xS9FTa2y0B1drSXbfpwfLFH68GXydtD41IdABZXSaBjWQ6wTHbbc1tupiiK/ThPrO7GIfPs/aLKMo8YYwndQxlrrjaNvjGhxe2ghrMgyU56rPi1qUVemlUQ2+V6gMzgJoCGikc0huTl9iZOByKhsApq15iq/aJ0nDNnB8xw4QMOi4BQQ0Sycc1jLThXX6yNY53rm8fOtEwqw75acirqKI9QdqL71iG4tRJLqT5xLtsYqUTQFexq72JWTIF3XlU7vsy8RsOmHKqUk6W4nTEZsbrgcojaO+KWnbczmJSw187o/V00tucq5KR7pc0HTwDdk9vKYIAMKov3/2D6t9WpuSQtfbcGxgG+Byd1Tb5xduE08fp8ateIK6/cAXzcn85UyxV871AzfgLCULLUCrUkWVdbi7qpxIYsCm+7l5VgiT15SlocxRyk6Dty8hB5IL73SOUTCB7ycYNMWipapWTq+k8wRYNrfUNRFK/OJBDocKZItaYUsuK/DDCvtfF4cwttBQHgynidBJhpVZcmZisZtM8sw71WWLlmDp0uOR0nQMkXNPgxuA9w4+sY6se4SzFq/1ZlBSLSQV+z2Clzb5PIn9cKVJUbdaCUt6mrDbICPJnI+D1mBwDnIw= X-Forefront-Antispam-Report: CIP:216.228.117.160; CTRY:US; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:mail.nvidia.com; PTR:dc6edge1.nvidia.com; CAT:NONE; SFS:(13230031)(4636009)(376002)(396003)(136003)(346002)(39860400002)(230922051799003)(82310400011)(1800799009)(186009)(451199024)(64100799003)(46966006)(40470700004)(36840700001)(2616005)(107886003)(26005)(6286002)(82740400003)(16526019)(1076003)(356005)(83380400001)(336012)(426003)(47076005)(7636003)(7696005)(6666004)(36860700001)(478600001)(36756003)(40480700001)(6636002)(110136005)(54906003)(316002)(55016003)(70586007)(70206006)(8936002)(8676002)(40460700003)(4326008)(41300700001)(5660300002)(86362001)(2906002); DIR:OUT; SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 Oct 2023 14:28:14.9784 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 7f46c2f8-2d74-4fd9-94bd-08dbda1d9e80 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.160]; Helo=[mail.nvidia.com] X-MS-Exchange-CrossTenant-AuthSource: MWH0EPF000971E6.namprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH2PR12MB4103 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 This patchset adds support for probing ports of a Multiport E-Switch device to mlx5 PMD. Multiport E-Switch is a configuration of NVIDIA ConnectX/BlueField HCAs where all connected entities (i.e. physical ports, VFs and SFs) share the same switch domain. In this mode, applications are allowed to create transfer flow rules which explicitly match on the physical port on which traffic arrives and/or on VFs and SFs, regardless of the root PF. On top of that, forwarding to any of these entities is allowed. Notably, applications are allowed to explicitly forward traffic to any of the physical ports of the HCA. Bing Zhao (1): net/mlx5: add support for vport match selection Dariusz Sosnowski (6): common/mlx5: fix controller index parsing common/mlx5: add Netlink check for Multiport E-Switch net/mlx5: add sysfs check for Multiport E-Switch net/mlx5: add checking Multiport E-Switch state net/mlx5: support port probing of Multiport E-Switch device net/mlx5: sort port spawn data with uplink ports first Itamar Gozlan (1): net/mlx5/hws: fix leak in FT management doc/guides/nics/mlx5.rst | 157 +++++++++ doc/guides/rel_notes/release_23_11.rst | 1 + drivers/common/mlx5/linux/mlx5_common_os.c | 5 +- drivers/common/mlx5/linux/mlx5_nl.c | 70 ++++ drivers/common/mlx5/linux/mlx5_nl.h | 5 + drivers/common/mlx5/mlx5_common.h | 1 + drivers/common/mlx5/version.map | 2 + drivers/net/mlx5/hws/mlx5dr_matcher.c | 41 +-- drivers/net/mlx5/linux/mlx5_os.c | 379 +++++++++++++++++++-- drivers/net/mlx5/mlx5.c | 17 + drivers/net/mlx5/mlx5.h | 41 +++ drivers/net/mlx5/mlx5_ethdev.c | 53 ++- drivers/net/mlx5/mlx5_flow_dv.c | 2 +- drivers/net/mlx5/mlx5_flow_hw.c | 4 +- drivers/net/mlx5/mlx5_mac.c | 8 +- drivers/net/mlx5/mlx5_trigger.c | 5 +- 16 files changed, 718 insertions(+), 73 deletions(-)