From patchwork Thu Sep 28 13:09:10 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Shun Hao X-Patchwork-Id: 207 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 562CC42661; Thu, 28 Sep 2023 15:09:53 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id DE0CC40273; Thu, 28 Sep 2023 15:09:52 +0200 (CEST) Received: from NAM12-DM6-obe.outbound.protection.outlook.com (mail-dm6nam12on2089.outbound.protection.outlook.com [40.107.243.89]) by mails.dpdk.org (Postfix) with ESMTP id 29A544021D for ; Thu, 28 Sep 2023 15:09:51 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=cnsZPmkN30M3JfamkAfaGNkZ6MC1MO3lFy9q4826B5C9w1WLg8uyVIRIkfNYbS/fyFAgiGWV590Yfh9oKilnqKbLS7+SMbWNGKCjK3uUtCNeLt1QMYfX+h77fwqP8cf/13VbIqO/986ttJALpn1WbxdshQWFDA24jespsyqccQ5zR7q1Q8QQ4URomsPssgEhK0QU4ayI/bfBSZN6fl0MsZwAoE5sxzTcSECz08b9K3v9AHJAuH+d3ZySNcbNJWieTkI7ZgRhPdZbogpue/fOFrO+GdZ2E378AXXGko7rklA0wUiwGYKT1t8oAQZcXEwPprHy0pY/sfBwSkzqI8T/gg== 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=oiZs8/9UwkKe6UFYftj21RIY4DFqs9ZHEYm5Ro7O01I=; b=TQWoHE4wtWabDtL6Sc39xelE0IzX5saGWrishHmdsdZzbRoejdGrGgoK2zXX7sbO1KY6BIUh5dSuG43T0RSzLWoNTymnnL1NbhEOMs5BIuMdhT+jq0MiYU8s0m6zC/1wYlTtYOOdd1174liwATj4+3agPtLGJ5OYqYHEWcV1l+vRS2SaECe4eJYxLNYAPTtBPPb2gvZnr+JhGv+xmIgCFL3O/J8QW1TnJSceU46YIvehmGlG37PNQk0UwpuwBjoihJryOCZ+j/azh91REStPfAjHhK6eKa+k6Eo54FB0rHNa0J4T2UoWlB/f4CBrZ5tQw8t/pAAlQb9moCrsaDYObQ== 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 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=oiZs8/9UwkKe6UFYftj21RIY4DFqs9ZHEYm5Ro7O01I=; b=P1hl5oznPd8LcjAw+3vBE2LsZ8ZMmH2b4fxYa7KQfra1sWd9DsCABUWvEfHx3e+BU69Hw9RzZgmERxUdLvI5jR/ytrF3A19IOdOkC9SzsfyXzLIX6gatWhnj1ObCEjbeGBxb9K1X5Gt9UJwwSSuFm2m7AoyIKuxYjVxKGalDYXf8iWySn2OAQd62zB3wXdZV4UM09NxWBRl1r2Xvvzd6Co9gvFNZGb8Gato1CHHXOqj2baDRdg4J0VDN62tloL5y2LWSb7GYQqMs4XQofTyUE7A/en/tS0qVzoKdOFjTsoyBTpXW1Ti3j9YXrSa3ChMxT6/SDYNfgxEjc9R4VyVLCA== Received: from BL1P222CA0006.NAMP222.PROD.OUTLOOK.COM (2603:10b6:208:2c7::11) by PH7PR12MB6564.namprd12.prod.outlook.com (2603:10b6:510:210::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.25; Thu, 28 Sep 2023 13:09:49 +0000 Received: from MN1PEPF0000ECD4.namprd02.prod.outlook.com (2603:10b6:208:2c7:cafe::90) by BL1P222CA0006.outlook.office365.com (2603:10b6:208:2c7::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.25 via Frontend Transport; Thu, 28 Sep 2023 13:09:48 +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 MN1PEPF0000ECD4.mail.protection.outlook.com (10.167.242.132) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.14 via Frontend Transport; Thu, 28 Sep 2023 13:09:48 +0000 Received: from rnnvmail202.nvidia.com (10.129.68.7) 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; Thu, 28 Sep 2023 06:09:33 -0700 Received: from nvidia.com (10.126.230.35) by rnnvmail202.nvidia.com (10.129.68.7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.41; Thu, 28 Sep 2023 06:09:32 -0700 From: Shun Hao To: , , CC: , Subject: [PATCH v1 0/3] Add HWS mirroring support Date: Thu, 28 Sep 2023 16:09:10 +0300 Message-ID: <20230928130913.2583907-1-shunh@nvidia.com> X-Mailer: git-send-email 2.20.0 MIME-Version: 1.0 X-Originating-IP: [10.126.230.35] X-ClientProxiedBy: rnnvmail201.nvidia.com (10.129.68.8) To rnnvmail202.nvidia.com (10.129.68.7) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: MN1PEPF0000ECD4:EE_|PH7PR12MB6564:EE_ X-MS-Office365-Filtering-Correlation-Id: b24011c7-c2b0-4eae-276e-08dbc02431c6 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: YKKiyWQvYDzwPzZHEuN5xTdt62AzS2KxAoVN6XzOE7jKZgPgvvrj8DX3XpNQOoy8oNovXn3gmZJvu31aDIZ73zdNyAAX1IKM5xsw16EP7exE+ZQQjxj+yTka/9BdSEmgGJX5nkDRTw01uTgso/iTMC5y/YfyvJh5FyeEK0FibLF1V6ZSHdYOusuYyjaPQO/cV2tXHC+qPqLOplgSmQrDOM6Pj2cpF/20vFf1srvtKAJSY05wZtgCeij9dB4uF0QUHPKy4duLcg17FKe3jMFajP4U3qs0KEF4vlULRHSoqwE+gHtH31BMDwDEh+Y1RTPP0ibgLVVVx1MGN2VUWzzdkkPaPLJGKSpeAUL0+R18pKIFL+gXtaDvKCB18XH7j724j2+mZJcldjdAKgtHunNCzq49L9MU2GQKmia9i0+JEwxOKfCl0h5BXSrqWxChWlnOwni7s2jSE4Bt56LxwH1uGaWWHDYeZudtt5X/pkjXjfLv0NgqZXYFfLn+gtR6ipku2XHMjQkLAsYFUEN+RK9OWIEvjXDDrSFy7KqgUr6vyw2sur+zfFubhZ6K/jFZ0MRGvHh5ys8YzWZPpHGtgGVIVbdKI1sbu9U+9iy3gmyIjtCllca9dsJLRvri1NZS0ThO0sTB/uiQMa+giNy4sAXkHq4hADk5lx9hAHM5gPgXgZU1DqJyXm7Gt++DOBQTToLtrNyNTLf1WlSbcf73i99Dqd4a/y4/4u5tsM5dH8gWuYUSP7/UJ+9xMNRy3YHVg+x3 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)(39860400002)(346002)(230922051799003)(64100799003)(82310400011)(1800799009)(186009)(451199024)(36840700001)(40470700004)(46966006)(7696005)(478600001)(336012)(426003)(83380400001)(6286002)(2616005)(16526019)(26005)(7636003)(107886003)(82740400003)(356005)(6666004)(36860700001)(1076003)(47076005)(6636002)(110136005)(70586007)(70206006)(54906003)(316002)(55016003)(5660300002)(40480700001)(2906002)(36756003)(86362001)(4326008)(8676002)(8936002)(40460700003)(41300700001); DIR:OUT; SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Sep 2023 13:09:48.7607 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: b24011c7-c2b0-4eae-276e-08dbc02431c6 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: MN1PEPF0000ECD4.namprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR12MB6564 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 patch series are to add the support of mirroring feature in HWS. The main idea is to create DevX Flow table and FTE in it. The FTE may have multiple different destinations of type Vport/TIR/Table. With this multi-destination FTE, NIC can duplicate packets and forward to all destinations. Hamdan Igbaria (2): net/mlx5/hws: add creation of packet reformat DevX obj net/mlx5/hws: add mlx5dr obj struct to mlx5dr action Shun Hao (1): net/mlx5/hws: add support for mirroring drivers/common/mlx5/mlx5_prm.h | 62 +++++++++++- drivers/net/mlx5/hws/mlx5dr.h | 34 +++++++ drivers/net/mlx5/hws/mlx5dr_action.c | 134 ++++++++++++++++++++++++- drivers/net/mlx5/hws/mlx5dr_action.h | 6 ++ drivers/net/mlx5/hws/mlx5dr_cmd.c | 123 +++++++++++++++++++++-- drivers/net/mlx5/hws/mlx5dr_cmd.h | 30 +++++- drivers/net/mlx5/hws/mlx5dr_debug.c | 1 + drivers/net/mlx5/hws/mlx5dr_internal.h | 5 + drivers/net/mlx5/hws/mlx5dr_send.c | 5 - drivers/net/mlx5/hws/mlx5dr_table.c | 8 +- 10 files changed, 384 insertions(+), 24 deletions(-)