From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 64C3BCDD1C8 for ; Fri, 27 Sep 2024 15:58:58 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id D25156B00B9; Fri, 27 Sep 2024 11:58:57 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id CD4866B00D5; Fri, 27 Sep 2024 11:58:57 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id B27A46B010A; Fri, 27 Sep 2024 11:58:57 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id 91DF96B00B9 for ; Fri, 27 Sep 2024 11:58:57 -0400 (EDT) Received: from smtpin03.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id 0D45A40E49 for ; Fri, 27 Sep 2024 15:58:57 +0000 (UTC) X-FDA: 82610976714.03.F7ADD0E Received: from NAM10-BN7-obe.outbound.protection.outlook.com (mail-bn7nam10on2076.outbound.protection.outlook.com [40.107.92.76]) by imf16.hostedemail.com (Postfix) with ESMTP id 354C2180004 for ; Fri, 27 Sep 2024 15:58:53 +0000 (UTC) Authentication-Results: imf16.hostedemail.com; dkim=pass header.d=Nvidia.com header.s=selector2 header.b=GmtwtMxJ; dmarc=pass (policy=reject) header.from=nvidia.com; arc=pass ("microsoft.com:s=arcselector10001:i=1"); spf=pass (imf16.hostedemail.com: domain of jgg@nvidia.com designates 40.107.92.76 as permitted sender) smtp.mailfrom=jgg@nvidia.com ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1727452644; a=rsa-sha256; cv=pass; b=k8w95EQHSKCwGHP79nyUUxmBpdKgovFi/yEe7HWQXgSjQqVAiY/dk+LR3PsELDVL+Hrq1Y mDNvYzO+gNBsVIZTC7wY3ML/X0QU5ua3wB8TPpOzPHBUkdBAYIutqsQrXL8PYapi7i+uv+ bqG4F2AbIn2Ayvg1M6e1Z50tII1k+bA= ARC-Authentication-Results: i=2; imf16.hostedemail.com; dkim=pass header.d=Nvidia.com header.s=selector2 header.b=GmtwtMxJ; dmarc=pass (policy=reject) header.from=nvidia.com; arc=pass ("microsoft.com:s=arcselector10001:i=1"); spf=pass (imf16.hostedemail.com: domain of jgg@nvidia.com designates 40.107.92.76 as permitted sender) smtp.mailfrom=jgg@nvidia.com ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1727452644; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=+1C3toqwnSOn8XDwIyk4mFhFR2dPeq9LZP1FXKTOaVs=; b=jnXtjFiZKavSp6Kjzzu1zIWQpcL6dmmZfJMymgP5g8VksWgMlVlAbCIwwdAmlwtn8X82mY 7DoEOn/jNVI7zo9g4ViShSmIUzb/KvHO7r29Gc6/TgB4TFGp3oBjeAPrpHxKdKTV3ONWdn +lIE1e0kMQALlm7fqrrq24GPe3Woo94= ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=haRh/YrkCd2sA7SIkpFVLQpOtn9wAJqd8r8URI44jNGi0Oia+J/mJJXv9EzYpCBDpnpppmnYGGgTaLOov2QAkWfOPoWPs6fL4kGI3uwyzgqsGdu4VImvIijzpYsKs1hEP5E9khAdyVmr7jgmbagS9Ql79ejdm8xg3ETDOaO/EJ3OOonY79rlUBkKbnaPPeyFiezzCdwlB1zTIsvshMdpEzBUVrDNyj0GjvkvXKDvFbySPhhGwa8KSysZ9KywfFIqWl1XLF/3xP1lScB5unUxP1b+RkvLeZQtbAjSG4Q1yIFpkC3kaEq4dI6ico0pLdNX1n7sClHWXcL6c2CGECs8ig== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=+1C3toqwnSOn8XDwIyk4mFhFR2dPeq9LZP1FXKTOaVs=; b=r2wlaIPo3UZK2F43RROoW2rTYJrqRhxvsUi1bPZBMTcVHhSGyWNVYP9h/qbqGga6FXV8PEsb24vcOVJTmQF8/VpdqCX2oHdvPQ2ZzD0ve0Z6xh2W4vI/9grhsgeyFSJ1lcUE6649kf7e/q0TxCTj26qiOK7zBSxP3yXHwGG8c51WUqzAMiHrh7tXKkXNK97aOKHNbd2x9gvWG+XXW8P/uohoirOfRIOX3910p5z/cp0U/1nLH0mdUVV5w+TlAwHb1LQ1OO128nV+6Mx2aP/GmLOOFVvj+NglcfaPEVqEch6+ejkX1qAlGsamGtqnjfao2subgBHu59D7S/OQIcqDoQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; 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=+1C3toqwnSOn8XDwIyk4mFhFR2dPeq9LZP1FXKTOaVs=; b=GmtwtMxJoWNKEZCENNk3mVg5GujE/5cbO7Ed9MkvKl/8mGPv5wLUnwBGe0VADlizAUooQiafpANQhNX48yncB6xvApRPKJMGy8dRb1H9iko2GpQGONZGv9Xsp8IQ9cUaPyTWUaZ9awA6BuTk7S7Wal8qlF7JCf35AIMOVTpqAXNMr4sc8zun9ZA6+I7I/S06KoEN+PEuyDoctyqzEkRcjSRBwmK9EpMwuJoGhYqcNAfLEugocsd92q74LDJ3K7Pj/EboWUdArweSSiI1xPlypQuxs8fw+nZIpXzK8oGX8+kZf0tAH9/G+8jS7Q9DVfgPSIoggZSxP3n3Xth0ZsK5VQ== Received: from CH3PR12MB8659.namprd12.prod.outlook.com (2603:10b6:610:17c::13) by PH0PR12MB7885.namprd12.prod.outlook.com (2603:10b6:510:28f::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7982.27; Fri, 27 Sep 2024 15:58:50 +0000 Received: from CH3PR12MB8659.namprd12.prod.outlook.com ([fe80::6eb6:7d37:7b4b:1732]) by CH3PR12MB8659.namprd12.prod.outlook.com ([fe80::6eb6:7d37:7b4b:1732%4]) with mapi id 15.20.7982.022; Fri, 27 Sep 2024 15:58:49 +0000 Date: Fri, 27 Sep 2024 12:58:48 -0300 From: Jason Gunthorpe To: David Hildenbrand Cc: Steve Sistare , linux-mm@kvack.org, Andrew Morton , Matthew Wilcox Subject: Re: [PATCH V2] mm/gup: folio_split_user_page_pin Message-ID: <20240927155848.GD4568@nvidia.com> References: <1727190332-385657-1-git-send-email-steven.sistare@oracle.com> <982f3e26-c998-4e72-b374-3f31bf0ca9f5@redhat.com> Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <982f3e26-c998-4e72-b374-3f31bf0ca9f5@redhat.com> X-ClientProxiedBy: BN9PR03CA0172.namprd03.prod.outlook.com (2603:10b6:408:f4::27) To CH3PR12MB8659.namprd12.prod.outlook.com (2603:10b6:610:17c::13) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CH3PR12MB8659:EE_|PH0PR12MB7885:EE_ X-MS-Office365-Filtering-Correlation-Id: 8469d3dc-09ba-4e78-9197-08dcdf0d46e1 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|366016|1800799024; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?lJQdCNzUOKpfzYRIMHgtks4WKUVHZVr2nrgpWMjzakENrJnPkfKiGnCTfikr?= =?us-ascii?Q?iYCC4DYbTWQwCIsSLI7w1kkfjAZxSaTdvPuzHv56E57B4oZghLAKrsuKiitt?= =?us-ascii?Q?MXcBXvcdtLmLEWqZJfrWZK3jUcYOIMxrfSB6l81xhRBRkBYVRA4okfZQD7eZ?= =?us-ascii?Q?+feTW0T5Pbf9E5Jqkasf+nS8oOWyGGjaSAQhTkL+TcQSijBoDhwL6oimDCW4?= =?us-ascii?Q?gdvRkwDKxmwJNIfHbdPjg7dzTsdzkR2FQc4y1Rclc/V9Y+zoOD5WXKOAjJgy?= =?us-ascii?Q?QKdcJ3QoXPq+khAq/ZUZScmO8y56yVd8+9xWVbcLZA+cLTjtbySeyJNQSNIf?= =?us-ascii?Q?nKsDivGFqwGgC/6E5Z8DySBokcI6eSlfCTfKzU22gMy++jdBmg7UemRzfhFa?= =?us-ascii?Q?MmFhuNPMs2hcKCFhhJjdRVr26gMvpMGqXx/Ppwge1KpnWYUlVmdMQ/itFNyc?= =?us-ascii?Q?yAMoBuj9Oxk11QcxzmbcAwP2ecr/IesBCVCO/ejA/bxgVKzEd2HXCrL7IOLx?= =?us-ascii?Q?uyuS3VTx3ZgskhZ9Qo1o2iY8BhkGFngn75V7LMpmvv1CRLBVWg70twgWY86v?= =?us-ascii?Q?h0HLM1ygJooCf9wLE4kpry+IPg6BDXVBl15SIFdlDyX46voNuk8LgPUvwfn3?= =?us-ascii?Q?CjKVPeazPB5YRl0yApnInoVfYqg5KTXfzaCXY5sgYi18Bgj2Iic6uD6MyqI7?= =?us-ascii?Q?2Cx/Y3BkYF2/FgZ4xDfZbsNOKR94DyNki649TWMTQkTSh1JXjskVwPTXckyS?= =?us-ascii?Q?z2GS4KpMaNnwn5jeclpBSjeHM3nBrQEO6hExfw3Zrro9+pwZ3QSO/67oskQ0?= =?us-ascii?Q?nQRHHbtxEtj3nOvJjzUy0KG/Wb49gUsLA7e6RwzurzB3on12WUMxfyuN0e3Y?= =?us-ascii?Q?S7JjCWPe4FYJhHQ+cdkduHOCLm21j5mEWTFDxQOyVd1xCxxIIEvbCr2JuBwq?= =?us-ascii?Q?JI5GL77gAsQjYOlJzpjz9MbLFOxCZicsvZAlGr9IB5/iNA6Ha8RxgelWYCae?= =?us-ascii?Q?YjF4VGC01QReAIDbEqGYnx6y7Q6rs9XqVnjOFxPVwc8hzziIRqSb96EMHOj6?= =?us-ascii?Q?0doMpOCOkWwP0WSGImt2zZ96eO7//qSu94sI1zcumZsPSoOjjT54nFKpNCeq?= =?us-ascii?Q?vq37g/lWzZICumwHpCSoroZbIb4uNKKtFjaBrmMJ7e2VUU9vuqBgIEIYXDB5?= =?us-ascii?Q?h+KxISaJDQpVL4p3ZeK7MW+mV8AdXznUxVTz59QPrG8OFrBv/+tDsXXhQ32T?= =?us-ascii?Q?fSt28fWBSmzZvw4xWCuYESk125OKGc8KieBaF/tlz4diUBG5Ixq1MxA7NFPs?= =?us-ascii?Q?geIrcI/tfwpAKuQQoTVx5a094Swx3AZxtcpkDbnnQQOqhg=3D=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CH3PR12MB8659.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(376014)(366016)(1800799024);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?6jXtIv5AllBGdBO3J2nUx1rn+8mDrsDEiC8aZ4DamPJ6fcW2iBI/+EGwAdLR?= =?us-ascii?Q?UR+H5iz36kPZp94ArMHcPiP42SBk4l90ox2GnZ2NfuC91zyXW54KJv42qm8n?= =?us-ascii?Q?okRd3c4NpUtkcBwvkD6gD33rkpcpAJqewhWYzFKODEXFw2Sgdo+8DrBrsUmg?= =?us-ascii?Q?MfCcv76WTL+H6d8WAaje64Nzy1Ig63bjvoN6tpQ5i6AW3LJ9XWH6MFsymHdH?= =?us-ascii?Q?gQlM7iWWmD99qJqR5UK1vyEgprhHXjZmKHmbDh2P2NsFICyFER/T8UjQn6Xl?= =?us-ascii?Q?K9jptd+GlIYLBz6Wsjw7uVhOdniU0iOX/jxLU7PKlFIqE5PDQhGUwAI4Yva2?= =?us-ascii?Q?8ELk/CnXVruyZ/stLsTkkoCr7lBFS3pVgPQWsw0zHpuOIHXfFmt60kIoCTr6?= =?us-ascii?Q?DIL1OVzaQIYLoPxkf5HrmcBtjBBGKxRYEDSE15pIoH9Ul2tL3fNCpzIxKFXy?= =?us-ascii?Q?hOwTYKVkMnN1w3sr1M5QRjZlD5djhPdQZMjsd0MIDncZ08lfRBMzPFtc5XIn?= =?us-ascii?Q?s+RHyjJH4hCzKWWoFIPviGTyBtj5ZExITaKJpp+SoXTAKuH09hCHLIJfjC2H?= =?us-ascii?Q?KXD8VEX9BBnmjVAP2/+Kk1FlpCXjVtkjENlIFYRIIOH3swy+bD8WdqIFKoXA?= =?us-ascii?Q?OwBWhEyWWkpkLTHe4a+xDd8a3E6A6QK2+v0tyZ/VHSRb3UTvdBK9v22Hm/2h?= =?us-ascii?Q?MF1TPQBZEaPSygjpYTD1vkzqy0VekfWCNlhsnI6mmBovozoesMKE6pZVXNke?= =?us-ascii?Q?2vNFA4eu/KjvONa/f5u4NzOO10fAlQOVyc57WBqz5KxBDMfUvpd7i6PyuNfd?= =?us-ascii?Q?NpyhUcrfC4V4m88bKtQ0eBWbcYJGwdA7DSyMMM54+fBzdZdHxpt18ZALopQV?= =?us-ascii?Q?0hIYSDZMOOvoOHDKI+hkxyGvE6wHVzs7t3RybH6o3rbg1cZkb/ElFkAvM+/S?= =?us-ascii?Q?vsUkTuhHr7oihzTzIyZqM6tDOdvziBi6ranCCpPxCe350DpsvFJqIDrD/imm?= =?us-ascii?Q?sjORAI0TVMW1tC84k6cacVoizWeNqsZsRSy2QbXgc1GLcJ2N4oTnWRl0tIWp?= =?us-ascii?Q?HXEZegI8Zj6gfoR0BhWWSU6CXPKCG9KDxO0TqW3ahwRzpAjqdm0HUFMOj5OJ?= =?us-ascii?Q?tRByl+uE/S56ljlMzGwzXFzf1Zz/0sNiCgX2Px2A1834UF6T4re3fcFiVLJj?= =?us-ascii?Q?xK6f1Yypd6HDij+VMUNUj4iG0BAAOAGYV3g6GUKM/jTlUXG6ymOTUMVV1+N6?= =?us-ascii?Q?zeturUmO4Xnbc834v9qlfcQCilau+4INBNh0hqwvuwTGVmtj4h3yYskkxkIX?= =?us-ascii?Q?xguxPJMfxKXLC8/fd8J3H4cQN954e7D5rEuHfG+UDhcRI75dD4nPSjx3qZl1?= =?us-ascii?Q?p9ejWMnWHRhKSlbpVjlaxvEp2OqzxyQE//VtJzSUJ5CwbKt1/bF7KuNjex4Z?= =?us-ascii?Q?RFW1GRPdKH+bahab4QaVDAWArn9gvKHL+y3F7ozDOtqK2tl4PFnPb3jKb3c1?= =?us-ascii?Q?T8XisUZ63w3lP10VzL9JHpojXhBcmHbrmbG+1kTWQIxUfjbWE5VTtcADs/Un?= =?us-ascii?Q?VF3veqvgVBEyNG2EGlU=3D?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: 8469d3dc-09ba-4e78-9197-08dcdf0d46e1 X-MS-Exchange-CrossTenant-AuthSource: CH3PR12MB8659.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Sep 2024 15:58:49.7788 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: XCfPEFVl/CSC4WoIboPCBiSIze+AoE1I3Zf3/nfbARFsU7+V9FF6NNvQJ3KuCeq0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR12MB7885 X-Rspamd-Queue-Id: 354C2180004 X-Rspam-User: X-Rspamd-Server: rspam05 X-Stat-Signature: itkdsg535upsusac1mzjfppeyx6t9qox X-HE-Tag: 1727452733-988891 X-HE-Meta: U2FsdGVkX19Mvph+pgVmGkFuhGNmWYqDtCvrqa0rggYorXOYwXU3/yiHR0WWip5OzUlHZjyuj3eb/EafgGBPiwGaoiugaORMziQuJbOlZMEc/Q+Ip1UhmF6gMPBO/K4EuOyWmoZA4xjVc4OzwTxe3AaWYGg+Ay4ChOm7Iv60iPBUb14Kw9bT0tcwKM1tMAkvHeR5DMgLXQcU9COJWvmtOXgAkWmEMcxCD9aUwWbfbrcg4VmDNGTenWFZfJJSqLLnCX4/pIoCT9S6xqHYM0K9k+ihB2VWV53EnsUVfjPdI9ZY3i5NhM2ExXa3Fn3AJ6xOK/xY530HQ9/rwkHmUPcszsHMKW8FZ8wFCAbYILtDZtxKz3qAM3Vs/L+6gDtzomraoyj2BVuqcpK0KjtGXUQDQi2l1yAVWe/JQX2kXX3uXOcWS7J9iZWbHiyTh3RgLLScExb2OK5WbMHdqXRsnaRuorgH2DQOub6xQeeTvgXc5s2pQoDwkBmk89weUDkhg7xQ5AQI2905zLIv9OgaGE1LsPEJekQUmZhuld+wEepmI+uXoyN8ZLYNQBdTf4cdP2fp3YZH6BlRHeLZdELegiQtQvf0IKvvmb7uGSTkhznRi2c16m7i2gYt3uSFhUkvhtegcUMNtB+gAuapfwoqr/LhUF52FpeEdavcT6R+6RzTH6KxK6nN+jt/Vujn1Vd9UAawt41guge9bfoU4s9i/CWNCNGPLkp02GYEjJk/4EPBOva5tQp2AnBxu0faFZEpK/wquN82DLkhLdrYUTPxInMeAev25jp/skN+Fx3SOFjhPEyvgHUiGfBUnyPFJ/YrA69Nb7qb5q+nwQJeNtCldFbaCudzQOst8umWM9cZd4p4Ei5EKs120u619336vqbnoM5si5SiI8YX8BcAsGUQjGBJN21WeWgs/r1RLq231wwVtlrXLebOYix0iq8Dqd6f+h/PCBWP4szXBoFcV5jEcw9 q/vY7cQT QsUx0/SA0IVecFeZxgRRzPprplQRnxjsCgU7TGPuGCP13IJ71TtKmQHuUtehtszJUWc9XJF6FWj0iA3A7S7Lxcb/0BkFi4WHq1qkSUQTZLnHbYmK8h6rAXDHNOh/HmQH9l3272/KAukL8kxNQSL9he1N9AKRGby0mVSkYhfGC+54XbiytD27hb7juXL6SBElPyLL+RzPkxIKFHuohrJeTJrcyyeFjGYepiqsnyKDAKsGecspjJOT9fgd527+BNrrImTScp3jOZh7Y9HdDmQ5jDEsA4y5PBTCDNZ02Vh9BNI7kcwfblHpsJRvkUOTjczgATSEs6xO0bTLlVI81En/Ym7BTfeWfNMp1oRhKLgDQ5hhnV+8= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000001, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: On Fri, Sep 27, 2024 at 05:44:52PM +0200, David Hildenbrand wrote: > /** > * folio_try_add_pins() - add pins to an already-pinned folio > * @folio: the folio to add more pins to > * > * Try to add more pins to an already-pinned folio. The semantics > * of the pin (e.g., FOLL_WRITE) follow any existing pin and cannot > * be changed. > * > * This function is helpful when having obtained a pin on a large folio > * using memfd_pin_folios(), but wanting to logically unpin parts > * (e.g., individual pages) of the folio later, for example, using > * unpin_user_page_range_dirty_lock(). > * > * This is not the right interface to initially pin a folio. > */ > int folio_try_add_pins(struct folio *folio, unsigned int pins) > { > VM_WARN_ON_ONCE(!folio_maybe_dma_pinned(folio)); > > return try_grab_folio(folio, pins, FOLL_PIN); > } That looks pretty good to me too Thanks, Jason