From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 5813E4301E for ; Thu, 10 Aug 2023 01:54:38 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 51DF640DD8; Thu, 10 Aug 2023 01:54:38 +0200 (CEST) Received: from NAM10-DM6-obe.outbound.protection.outlook.com (mail-dm6nam10on2061.outbound.protection.outlook.com [40.107.93.61]) by mails.dpdk.org (Postfix) with ESMTP id D4825406B6 for ; Thu, 10 Aug 2023 01:54:36 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=DRzh6Km33LTCavja8fv5wGm6t72ZwPO2hNfKmQZMwIDbjw29jFdSZXoRL4HVjSjWTXt9DM3Le30wCqJ+yrNuBV5iKFekgj77bJjY4rLepvUddgLLAUr2a8Z+uxdwtc1G7JVfXqSrvna9Zcvtl7q+LS69ghPLoVHWJAVKi2p4/QUpYR9J5nBACqsnbB46aogJ3j182q58eokh5Jk2W3Qjfl/V0KndWMmWr0db/G9yTkGD7ae9j+Vn/h8J60+RDpm0R21xVM1M0vyCkDOIpmVNai+6mgAt1K9b8fWA6HcdwUvAgypKNxVSRv2MEO9nJ8lWPtmAeXcea9UE/Z9I/NB9UA== 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=zPouiLHzkJcVUWN0j5QMkWiNBgeNtzoZUuYijv28th4=; b=TMODS0Tqv6V/Xs1VYrhzOYgSlXjd+ckSrZT9eRc6iLLPk6XaTgoKEsRNzkWIThwLzBZIndRV/dBg1Ds1/RIsM7JVwyQY3J2YppZxIqwa8PEKfeTYP//qwhjq7i8CeUpiLK5mlH7Gt+AW3rnUQMMOa2XCnGPArThB0rapqsAFWNEg16Z8R8jzlk8mREJJXgrCYoWor1N35y6YGE8JwnB2cN+wgB7GkLn4ZL5sc/GupJnijFs1J/G68X1yLn4ZtAWfxcg9vHHI0FxblqU+z5ui3B6RLfQ8E7QwGEJpNtkfYoGSnKteLTVt5yz4qDJ6B3iAyQ7khPkMT7L6pOX4LWQTTA== 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=zPouiLHzkJcVUWN0j5QMkWiNBgeNtzoZUuYijv28th4=; b=E5+DnOUuWLhahbtAjtIq7E87U+mxieLwlGO/s7uzYWt7nkveqXorwKytJv5WiK82A7NS8j1gD6vAiMPvIK0YrKLVNJQ7NchbC4wpkcxuVI7zFlS1qcsuKRkm7vnrQ7LIpPE4a2EcGrFmXkqVYkPk+UmaxKbsVEIyOM5j5ECzAJ14d8kdSOheKnskyawAjbyIt5843s5aeSxbm4PcaqbkFFVPMv59+aI7AtZZBzJvzC5gWfpcIlJ/hF4dZVXA52oVh6t/2CSbt/v6oscTK2W0sjGy+veDyuI8pUlpFxwLZDqGphsHuaT0lUtjOh+hWwlzp85pjiGLQs55Ed/JXQJ0dA== Received: from DM6PR05CA0065.namprd05.prod.outlook.com (2603:10b6:5:335::34) by BN9PR12MB5274.namprd12.prod.outlook.com (2603:10b6:408:11f::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6652.30; Wed, 9 Aug 2023 23:54:34 +0000 Received: from CY4PEPF0000E9DC.namprd05.prod.outlook.com (2603:10b6:5:335:cafe::5c) by DM6PR05CA0065.outlook.office365.com (2603:10b6:5:335::34) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6699.7 via Frontend Transport; Wed, 9 Aug 2023 23:54:34 +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 CY4PEPF0000E9DC.mail.protection.outlook.com (10.167.241.82) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6652.19 via Frontend Transport; Wed, 9 Aug 2023 23:54:34 +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.5; Wed, 9 Aug 2023 16:54:18 -0700 Received: from nvidia.com (10.126.230.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, 9 Aug 2023 16:54:16 -0700 From: Xueming Li To: Erez Ferber CC: Viacheslav Ovsiienko , dpdk stable Subject: patch 'common/mlx5: adjust fork call with new kernel API' has been queued to stable release 22.11.3 Date: Thu, 10 Aug 2023 07:48:09 +0800 Message-ID: <20230809234930.32424-48-xuemingl@nvidia.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230809234930.32424-1-xuemingl@nvidia.com> References: <20230625063544.11183-1-xuemingl@nvidia.com> <20230809234930.32424-1-xuemingl@nvidia.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-Originating-IP: [10.126.230.37] 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: CY4PEPF0000E9DC:EE_|BN9PR12MB5274:EE_ X-MS-Office365-Filtering-Correlation-Id: 4e233db4-7352-4e15-7159-08db9933fb9f X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 4nMNEPKrRg8Tzexoanm7tWgyfehaKKOb8s1bWoay4wNic/kWmSCFkdpe1/hpl3IkhHjOgfqFrXysZvF+yky6V8qOJU6zbV5ds9ZW8tOMWejzPz+VXP+oZx3Jw0fUe7pZhgbHaHEWWDu4rEEFfsshoyU+OwCG3lk8E9y3V5Q3O2ZZQhnRJKY3wf3hf4NfVn0KsB2UDlow8reeVOFopEHTjXt/vMn9MKC8O4XN8bUG/CRR7pIDodQiHGYbwsT18KAkJuzltEgikl38HQBjDp2zr2P5GdBIO16MvHEoCHCWsRB5+4OUYfp+Yg2KJPYqPnrZVd2V0WsiChz30GNV1F59ynmNd+nVGc7w0ky5oGZpenYTP3jINRGgKnIjl145n1ZRlVHJk8WU/TdWYRvrzo8ZYeA/0OxNUXwsC6IHRYzgV95vOfnt2Wj5MQKS3SCRzQ1ok4ozBQAEOl9ttnfp8k2Y96vZJ0+7a+dz6QIW6QzmSmMx2LbDUDB2lpyTxcR9hpHeZfDHMA4IxvQM/uBUNjaeZ+7/5mS+HktLAD6N9BCvxndtGcdy/HnvgnqmEOAvixXL34Iwftqs0Y8WSW1CviVGrDblN7mR0n2mDklhgSv7ZZFSS6TA6d6GGZpZBfnepItrxmMv7PG7qSL4BMcDlkSjqLKUgSh9L+oNd6Cw6fp7VXYoDDiG8TagkYlbPTsunYZSeK/7FSz+oU5PV+TeIz57VTAShMUPCsDK2FIlkEXOkRmF5Fk4C185CQ9t/TBi3lE2RVkjuROhveR1tlQ5mqEAmQ== 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:(13230028)(4636009)(396003)(376002)(346002)(39860400002)(136003)(451199021)(1800799006)(186006)(82310400008)(40470700004)(36840700001)(46966006)(2906002)(41300700001)(316002)(40460700003)(6862004)(8676002)(8936002)(5660300002)(36756003)(40480700001)(86362001)(55016003)(82740400003)(356005)(7636003)(54906003)(37006003)(478600001)(2616005)(1076003)(26005)(53546011)(7696005)(6666004)(16526019)(6286002)(336012)(966005)(36860700001)(47076005)(6636002)(4326008)(70586007)(70206006)(426003)(83380400001); DIR:OUT; SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Aug 2023 23:54:34.5719 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 4e233db4-7352-4e15-7159-08db9933fb9f 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: CY4PEPF0000E9DC.namprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN9PR12MB5274 X-BeenThere: stable@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: patches for DPDK stable branches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: stable-bounces@dpdk.org Hi, FYI, your patch has been queued to stable release 22.11.3 Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet. It will be pushed if I get no objections before 08/11/23. So please shout if anyone has objections. Also note that after the patch there's a diff of the upstream commit vs the patch applied to the branch. This will indicate if there was any rebasing needed to apply to the stable branch. If there were code changes for rebasing (ie: not only metadata diffs), please double check that the rebase was correctly done. Queued patches are on a temporary branch at: https://git.dpdk.org/dpdk-stable/log/?h=22.11-staging This queued commit can be viewed at: https://git.dpdk.org/dpdk-stable/commit/?h=22.11-staging&id=dcd21e65bdd3a7c33c1d578b760b3127aa02c401 Thanks. Xueming Li --- >From dcd21e65bdd3a7c33c1d578b760b3127aa02c401 Mon Sep 17 00:00:00 2001 From: Erez Ferber Date: Wed, 24 May 2023 15:01:40 +0300 Subject: [PATCH] common/mlx5: adjust fork call with new kernel API Cc: Xueming Li [ upstream commit 42f113c53cbbbc4585ad68b4d2a8aa9bddad23da ] While doing process fork() the operating system remaps all the parent process's memory to the address space of the child process and activates the Copy-on-Write mechanics - it duplicates physical pages once memory writing happens in the child process. Sometimes memory duplication is not allowed - for example, if the page contains hardware queue descriptors. To handle similar issues the rdma-core library should be prepared for forking. The ibv_fork_init() prepares the library to track all the related memory and prevent it from forking using madvise() system API. This approach allows fork, but not all the memory is forked to the child process and, application should care not to touch pages where the parent application allocated the rdma-core objects. The newer kernels propose an option of copy-on-fork for DMA pages and tracking all the memory and disabling it for the forking is no longer needed. The new API routine ibv_is_fork_initialized() should be involved to decide if library initialization for forking is required. Fixes: 0e83b8e536c1 ("net/mlx5: move rdma-core calls to separate file") Signed-off-by: Erez Ferber Acked-by: Viacheslav Ovsiienko --- drivers/common/mlx5/linux/meson.build | 2 ++ drivers/common/mlx5/linux/mlx5_glue.c | 4 ++++ 2 files changed, 6 insertions(+) diff --git a/drivers/common/mlx5/linux/meson.build b/drivers/common/mlx5/linux/meson.build index 7e1575efc8..b13ae29844 100644 --- a/drivers/common/mlx5/linux/meson.build +++ b/drivers/common/mlx5/linux/meson.build @@ -217,6 +217,8 @@ has_sym_args = [ 'ibv_import_device' ], [ 'HAVE_MLX5DV_DR_ACTION_CREATE_DEST_ROOT_TABLE', 'infiniband/mlx5dv.h', 'mlx5dv_dr_action_create_dest_root_table' ], + [ 'HAVE_IBV_FORK_UNNEEDED', 'infiniband/verbs.h', + 'ibv_is_fork_initialized'], ] if libmtcr_ul_found has_sym_args += [ diff --git a/drivers/common/mlx5/linux/mlx5_glue.c b/drivers/common/mlx5/linux/mlx5_glue.c index 702eb36b62..88b99fe029 100644 --- a/drivers/common/mlx5/linux/mlx5_glue.c +++ b/drivers/common/mlx5/linux/mlx5_glue.c @@ -19,6 +19,10 @@ static int mlx5_glue_fork_init(void) { +#ifdef HAVE_IBV_FORK_UNNEEDED + if (ibv_is_fork_initialized() == IBV_FORK_UNNEEDED) + return 0; /* ibv_fork_init() not needed */ +#endif return ibv_fork_init(); } -- 2.25.1 --- Diff of the applied patch vs upstream commit (please double-check if non-empty: --- --- - 2023-08-09 21:51:19.438332400 +0800 +++ 0047-common-mlx5-adjust-fork-call-with-new-kernel-API.patch 2023-08-09 21:51:18.194352000 +0800 @@ -1 +1 @@ -From 42f113c53cbbbc4585ad68b4d2a8aa9bddad23da Mon Sep 17 00:00:00 2001 +From dcd21e65bdd3a7c33c1d578b760b3127aa02c401 Mon Sep 17 00:00:00 2001 @@ -4,0 +5,3 @@ +Cc: Xueming Li + +[ upstream commit 42f113c53cbbbc4585ad68b4d2a8aa9bddad23da ] @@ -26 +28,0 @@ -Cc: stable@dpdk.org @@ -36 +38 @@ -index 718da020f7..15edc13041 100644 +index 7e1575efc8..b13ae29844 100644 @@ -39 +41,3 @@ -@@ -221,6 +221,8 @@ has_sym_args = [ +@@ -217,6 +217,8 @@ has_sym_args = [ + 'ibv_import_device' ], + [ 'HAVE_MLX5DV_DR_ACTION_CREATE_DEST_ROOT_TABLE', 'infiniband/mlx5dv.h', @@ -41,2 +44,0 @@ - [ 'HAVE_MLX5DV_CREATE_STEERING_ANCHOR', 'infiniband/mlx5dv.h', - 'mlx5dv_create_steering_anchor'], @@ -49 +51 @@ -index 3497aa940d..6f858db8fc 100644 +index 702eb36b62..88b99fe029 100644