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 4FE30C02192 for ; Wed, 5 Feb 2025 19:23:03 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id D3036280017; Wed, 5 Feb 2025 14:23:02 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id CE05B280013; Wed, 5 Feb 2025 14:23:02 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id AE432280017; Wed, 5 Feb 2025 14:23:02 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id 8B373280013 for ; Wed, 5 Feb 2025 14:23:02 -0500 (EST) Received: from smtpin11.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id 2E97F1C75B1 for ; Wed, 5 Feb 2025 19:23:02 +0000 (UTC) X-FDA: 83086863804.11.5014032 Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) by imf19.hostedemail.com (Postfix) with ESMTP id BD7CE1A0008 for ; Wed, 5 Feb 2025 19:22:58 +0000 (UTC) Authentication-Results: imf19.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2023-11-20 header.b="TGQ6mKl/"; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b=kyfaTKN+; arc=pass ("microsoft.com:s=arcselector10001:i=1"); spf=pass (imf19.hostedemail.com: domain of liam.howlett@oracle.com designates 205.220.177.32 as permitted sender) smtp.mailfrom=liam.howlett@oracle.com; dmarc=pass (policy=reject) header.from=oracle.com ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1738783378; 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:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=KKDb7WOmO4Hqzsy/UsVo5FHN7mdN34nqMpO77Upbqik=; b=0XIJPJY11ygHCcM2jGNGg10pXXvSfoWQkAWi/nFSv6fAytzXzOyMeB95A+G/WJVudkaqAc 7608xELSxPNbK0hifElH5sSx5iWF1QO8Ti1bQbfD/07oKTnIKMlyQOFgp4pjCjYeu5JrrT NkVYpxnVGZZQBuVTSa1SqdKO/63ZscU= ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1738783378; a=rsa-sha256; cv=pass; b=J6bjoXvnh6i3BjWqn6+lF4Xig2zsw0bk9OPoxsYYxXwWayHoX2LTKDuoUghIZiKpAaGn7Z BwOr6FEzG2+Mf9f+0jLjQzMSHWgH9/fW6uXDeQsHCJ4GcWaNI+IIUsSVkiDjh1IVKKsv6J hmAdceNBPVA8nJu3vnMhxIYtJzMu9XM= ARC-Authentication-Results: i=2; imf19.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2023-11-20 header.b="TGQ6mKl/"; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b=kyfaTKN+; arc=pass ("microsoft.com:s=arcselector10001:i=1"); spf=pass (imf19.hostedemail.com: domain of liam.howlett@oracle.com designates 205.220.177.32 as permitted sender) smtp.mailfrom=liam.howlett@oracle.com; dmarc=pass (policy=reject) header.from=oracle.com Received: from pps.filterd (m0246631.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 515Gfi55009607; Wed, 5 Feb 2025 19:22:47 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=cc :content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s= corp-2023-11-20; bh=KKDb7WOmO4Hqzsy/UsVo5FHN7mdN34nqMpO77Upbqik=; b= TGQ6mKl/gHDa/REmDQXFL7uvXcw0JuZzzzyfJ70dWoX8DFRa2aS6U8WMOGMNwQ2Z okKJym5coLqXn/WGolHKu4Q0Am8wxH7UiuIb3PGNucwBQLVDmZgl7/6z2oSu6xJ5 0M4ZyYrKMut5kgytewTqi86BtgrJ0oKztvvS8y06GnVb4nc+zTHYPJBKfS+IHhCp rCIuj/rTutsRDOj5iqMalgAk/lmvlR8FKJvtmPT+7VCQrNXEr6X2QtVNWd456YBr Xmx9UdPKGWAZjZ7SMQz0ub5C6dNyzJuQElDtKQcQnVtUUjgbzgNnRZoIXN5STqi5 9qgp2MO/6K6y5zg/Sqhaag== Received: from phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta01.appoci.oracle.com [138.1.114.2]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 44kku4u3f0-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 05 Feb 2025 19:22:46 +0000 (GMT) Received: from pps.filterd (phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (8.18.1.2/8.18.1.2) with ESMTP id 515I62SC022731; Wed, 5 Feb 2025 19:22:46 GMT Received: from nam02-dm3-obe.outbound.protection.outlook.com (mail-dm3nam02lp2049.outbound.protection.outlook.com [104.47.56.49]) by phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 44j8e9gmvt-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 05 Feb 2025 19:22:45 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=o7p5dEJtTDW9hTguiC12pPI6AdyqhHRh/PTHZw29+6krEosXxbPub1FKoReYX0nLDJOFSB5p8jMpZzb2FesY6ibI5AdDLVGq/yGHiCMfPUbvKkyBMHjtuSZyrVvXb0Ua37jY3yNGwzm5jgnormJuEzljmnDtb4QvpSYGqsNtwyvdbsrVsqu6PHiJMiBDYCWcR2XyPPzJ77ApyZmyaqtMKxJPGuDw5kVrl4dTK2Y3K66ZAZiNKPUlCGuCjaXKWI+rPlZozx/j74TLh/Eo47wBBRTMiMfvh+qZkLlicvvqK0r99hFb1LI3T/WVcQVMlW2s4GtzUK1UQ44LIkNVhFSzeA== 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=KKDb7WOmO4Hqzsy/UsVo5FHN7mdN34nqMpO77Upbqik=; b=Hk6pp08ahiw5K9awD8t736n/4zWNGGIzkWsaEIH5YybKqRxMcMxqPIIeu4Zoamp5i8xaVqlgflANubcLAOSZnxK/V/qUIZg1j3yvtlQpLmrEOYzzFOKXtbYAsfNcNvm+qbclMnj2VNbEWcrLXQHp70EidxcSTm2o6CefwlyibradIQHp1rAPSFE5vxqXX8wL36idwlAho4NNLBwSQKgxQ+HvruXj43Wlnrt6aOTxPyY3rR7VnUJPjbxvku82ZrR4Yjs6sKisQ0Paa48S93hYnjsoAVw2Wdmp5taoWNWGsFseoNLcBV7J6MSyMhirnfaUhifNJFT1dZJqXVsiBkIe/w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=KKDb7WOmO4Hqzsy/UsVo5FHN7mdN34nqMpO77Upbqik=; b=kyfaTKN+UaeYiYg+zNURpgtrIfu/LizlnuYgD/y8EBnjY40OKaL8pthbareNYdM++YVMfascy8LCbcywPOy0f8ADDR50iambO8biw0w6g0+o4nSmTR01r4hDyO5CGT1BaCEAgUE5LoiCR6zprKCAB6SSPjQd0jM5Y2zVSNUu4dw= Received: from PH0PR10MB5777.namprd10.prod.outlook.com (2603:10b6:510:128::16) by CO1PR10MB4756.namprd10.prod.outlook.com (2603:10b6:303:9b::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8422.11; Wed, 5 Feb 2025 19:22:43 +0000 Received: from PH0PR10MB5777.namprd10.prod.outlook.com ([fe80::75a8:21cc:f343:f68c]) by PH0PR10MB5777.namprd10.prod.outlook.com ([fe80::75a8:21cc:f343:f68c%4]) with mapi id 15.20.8398.025; Wed, 5 Feb 2025 19:22:43 +0000 Date: Wed, 5 Feb 2025 14:22:39 -0500 From: "Liam R. Howlett" To: Alice Ryhl Cc: Miguel Ojeda , Matthew Wilcox , Lorenzo Stoakes , Vlastimil Babka , John Hubbard , Andrew Morton , Greg Kroah-Hartman , Arnd Bergmann , Jann Horn , Suren Baghdasaryan , Alex Gaynor , Boqun Feng , Gary Guo , =?utf-8?B?QmrDtnJu?= Roy Baron , Benno Lossin , Andreas Hindborg , Trevor Gross , linux-kernel@vger.kernel.org, linux-mm@kvack.org, rust-for-linux@vger.kernel.org Subject: Re: [PATCH v13 2/8] mm: rust: add vm_area_struct methods that require read access Message-ID: Mail-Followup-To: "Liam R. Howlett" , Alice Ryhl , Miguel Ojeda , Matthew Wilcox , Lorenzo Stoakes , Vlastimil Babka , John Hubbard , Andrew Morton , Greg Kroah-Hartman , Arnd Bergmann , Jann Horn , Suren Baghdasaryan , Alex Gaynor , Boqun Feng , Gary Guo , =?utf-8?B?QmrDtnJu?= Roy Baron , Benno Lossin , Andreas Hindborg , Trevor Gross , linux-kernel@vger.kernel.org, linux-mm@kvack.org, rust-for-linux@vger.kernel.org References: Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable In-Reply-To: User-Agent: NeoMutt/20240425 X-ClientProxiedBy: YT1P288CA0002.CANP288.PROD.OUTLOOK.COM (2603:10b6:b01::15) To PH0PR10MB5777.namprd10.prod.outlook.com (2603:10b6:510:128::16) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: PH0PR10MB5777:EE_|CO1PR10MB4756:EE_ X-MS-Office365-Filtering-Correlation-Id: 76d0d6dd-07af-4845-de2b-08dd461a76b9 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|7416014|366016|376014|7053199007; X-Microsoft-Antispam-Message-Info: =?utf-8?B?eHdVUTgvZ0VTaGR5ck5na2FmbUVURDFyN05BeVE5TUJlbHBRWk9ubmlqMDlX?= =?utf-8?B?Q00yYjMyMHVJWCt5TDBiQnAxSWEyRFNaVTZISk1KeVlGN09hdTI0YWpkby8y?= =?utf-8?B?MExYdDZ1dGZFSHVXV3BaSGpBdkZ4Rjlpdlk3WW82M2h4V05MYUZUS2JYTjZX?= =?utf-8?B?dWkzZXBmMEppM2ZwZU1ESzNnb0RxZ1RhdW9WR3hER1l0VjNlWDRRcTk3RC9s?= =?utf-8?B?UFZhM0RjWWU3UXljNEtJWVNoUkxNRFRnQmcyT1pGRG5HbUU1Y3lEc2ErUmwx?= =?utf-8?B?dVRRUksrbDcyaHlXemY3eFBOOVRwK0xpaTNMaFpXU1pCTS9sT2Y5ZENXY0sw?= =?utf-8?B?YlpGblJad05hSTkrQk9YZm5VRytlbXBqdGZIYmV4WHI3YnlwWlR1d2h3UFdr?= =?utf-8?B?UGVvaXZWWGlEQ1p0eVNXc2VSR3huSk9XdGQ1Q1JGbWl4V0xKV0NkRGo0U0JQ?= =?utf-8?B?bFZxUFVaODdGTlJwbFlnWGVOenhRS2V3eTZzS3JNTFh3aDhJNUY5Yjk5T0JC?= =?utf-8?B?MENxV25TdFFTYUl6OWlQRjluVCt0dDhRYU1JUVVxQjRMdTE3RFJpbGJtMS9o?= =?utf-8?B?bm1GSWR3MmRmanM5MU5GY3lBU1UyZ0d3TElscnVWU2FkQThlWWhWZmVIbkpu?= =?utf-8?B?V1FWWnNlTFRhaVFHYzFLeWJpSHZWa1Z3Zi9Md0ZxMk9rRWxUVXR2QlhPU1Rx?= =?utf-8?B?OXhDSWFFZ3B4eG9GOTBFU3FhbVNMUE15cFl1R3R3enRiMi9ENnhudHFwenZE?= =?utf-8?B?UHZicG9ZcEtWc3Q4Q29seXZTL1pjYyt5VVhnaDJYNkhNeTRyQVo4eXk0Z0ZZ?= =?utf-8?B?SHRLZDkzSmxBdjRBVFJEVlZLNW5URWlWL09sME42bStjdmVwbUNRQVhra3Zo?= =?utf-8?B?Sjd0R3ZuSXNZR0xOY2xadUdSdW0vN1E4MUxwZVFaQU5tOUs1TXdBbkJOYzZD?= =?utf-8?B?Wk1pV2pjLzUzYnE4L21FcFpPMjlIeHRtdzBROHNzd3dmekdtaHVHVmlOQ2RO?= =?utf-8?B?VXJZWGoycExLckE0RFpwWjQ4MDBCVDdJQmFqTmpyUHdJZ2pvaHJHTy9Yelpz?= =?utf-8?B?ZEVlT1ZXWFcwU0xPOTFUMTFHbEo2aEdTSEV6TEZmdkFaOG4rUVJQc3NibS9a?= =?utf-8?B?NGFBMTVGR0pEWk02OU9pM1c5TkNCczd6eW1iMHJqSUJpRkIrWmlFVVo0MzJQ?= =?utf-8?B?SzlXaW10Q3FHM2tFem9XcDJPN3JTU3dxMGNEc1kxeUUwNjZDeEo5VEZBb0JH?= =?utf-8?B?VWZNdDJ4eTlYM1o3L0cvUVo0RlJNeWJDTHNRS2dwTEs5SHdiTnc0Rk45TVR6?= =?utf-8?B?NFpVb3FTYzdpN3UxM1B2clRnelhLTHRQaTQ4U2RDM3ZJYUpSb2xCNWtLWTQr?= =?utf-8?B?KzhQV2lZY0lRVkVHWGNDWWFzQkFGMVE0M3lzSi9sR281QkJRVVJqcUxtVkpK?= =?utf-8?B?TkJXVWxhZ2lBSWtQb1c5V2FtWmNzVTZ3VkM1eE8yWnB1WUkzY0NBSDBydWZL?= =?utf-8?B?M1JtQmdObUFSVTdpMktraDA2WEdESHJxU0JxY0kyWFROZHErc2pkYWNHVmIx?= =?utf-8?B?S3RhNy9qN0g4NWZGOTlxWE40bmxqN2t6bU5GV3pkWGx5QlNtWUFxbDNCdzFt?= =?utf-8?B?S1BYMTFiL0ZnZXE2eG55bEVPczg1eHltOXJyYnBncGk0WmVGOTM3eUp5cTdL?= =?utf-8?B?UFJhS0tDeWRYQnJ5THFpWmd3Q1RvMXMwSzZNVUtwaEl5Z1lZTE5RczhtMC9s?= =?utf-8?B?ZEdSaTNHN2VGSzZFTEpFeTQ5ZlNMc1M4dnNpY3pGYWVPVUZNRC9ZdEZPS082?= =?utf-8?B?RHM2ZXFhVmoxYitZNU9xT3E0L1BCR0NvbGE2RlduUzdLeVd0cy9DNTN6S1No?= =?utf-8?Q?tcfbjSF8XfWCC?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PH0PR10MB5777.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(7416014)(366016)(376014)(7053199007);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?K254Mk0wWCtuYnVMNnMySG40TnJkOHBXUWRsTkFWN1NjdVpnSWtCSlpsZGhS?= =?utf-8?B?VHYrVlFWekFtcDNiZyswRlpxNmxackpjK0xxRHErTkp5WUYrZXl2MFpBMmtL?= =?utf-8?B?MVRtV2wyTndMSWpRL25aUnlJR0xySDdYYVJyVXEzd1dRMXFOMUZITmNsM2pL?= =?utf-8?B?U3NoSGp0T1M2cHdjcDhEcVZLQ04zaVhDUDZ6b2ZWQjlnOUg5dnpzeFJKL3I1?= =?utf-8?B?My9lTUVuYm5lNENLVDAvaDU5RHUrV09kb1NTN1NJWHE2ajVDYWVMcE1YREl1?= =?utf-8?B?QXR5WHYyV2hCODd2OG1BV1FJWEdkYWdZOVRWa2ZBMmhIREhtalNWRU1QWGN4?= =?utf-8?B?Wjc2dW9EZ2JpN05vbWJ6c1hIS0FUaC9SMnZVa3VYY3ZiYlgwKzRsK1lqYWhy?= =?utf-8?B?eHRIRjkyaGtEK3RsQ2xLTzhiTWI2SU9YbEw2QVJtWGk2UTY1MnhIWS9raW1G?= =?utf-8?B?dkhOVjVtQ0sySWhQQURubnBBT29MUitjQllQNUE1Qm4vdmJZMDlyMFNKT2pw?= =?utf-8?B?R0ZteDl1eks3ZkZBeGVVdThPUWU3eUo0SmZVejd4MldoTXJDVDlDS1JVWXdQ?= =?utf-8?B?RkxJNXN5QnpDMm5RWGVOMzVuR1dWWUdFaEtqK2FBS0ZaZ2Jka1hBbWFnbTlE?= =?utf-8?B?MFlNREMzamtnRy82RkdtWTVlT1FvbHB4SlB4WE5wVTZJSkZsRWl1WTAvTi9h?= =?utf-8?B?MldKRGpqaUxlS2tyN0V2eUZBaXJiczduaVI2Ym53MDVlV0RrSytlZUNyemlh?= =?utf-8?B?TVRYbkJ4TTQvaStzTy81WEV3VmR4NHZsUzFqQUdCdmNZUGZDZkg3cmdTMTJR?= =?utf-8?B?bVVad2xjNlZqODhBSnR4MkVPSEdPNkpZSkRzZVB3eU9lRmFlbC9yeVR2ekpN?= =?utf-8?B?RW1CYWttem5PZGJsdW0wanh6Mm4ySU9lWVNqT2JCOTdrQ2pyZ3VadXN0TnV5?= =?utf-8?B?bkNJcXF6N21tc29JRlhmaU5nUnRFTGpHbHU5TDg4QkhMbi9meGhYSEpHeTlV?= =?utf-8?B?a0JMZVBGbzN0WXdUaUlISDg1SEUvUEtFTzdvQk8rUURoRXJDUkZjMTAzVHM5?= =?utf-8?B?UnhUK1J4a1R2OEJLY21PRGtRWXJnTW42bEZwZnN3dDNTOEVTMDA2UVJsK1FG?= =?utf-8?B?a09rdnJPWnJhT2lRMjdyWTJwajZkNlFTY1ljakZya0M0bnIzR2xCYUdxSnAy?= =?utf-8?B?bnVBWFJCQS9VNzRPQ0l4UUt3c0hGSnowNFpPTXhxMm1WclJ5K1Jncjhub2hw?= =?utf-8?B?RHJHcWszcmtWY0VmL3J2UUU0U28zWU1mK0VtR2ltdU1hek03K1hIdEtLY2Jh?= =?utf-8?B?VjBmaVJuTkdPWW54ZE9FNjN6bGNMU0MrVXZ6WFc3Ukx6LzY1U1VQcGkxeUVr?= =?utf-8?B?QWp4cnVVNDQwQTVkTkVXVFhOdll6S2x0djh0eEVQa3ZmaVRXd1UyL2NZeTZt?= =?utf-8?B?MWh5cnpiVmRLOEN0dzBHYmNpL01HU0dPdTRhbWxJM3lZY0RtSlRNdmtrb2VL?= =?utf-8?B?T0J6aXhXalkzMi9TakZnaGUzSGRlNGlLTVJSRUNzUzNSTlY3ZWM3bTkzb2Yx?= =?utf-8?B?QXVialpaMjBkYTFNeDQzSVRFdGFhMTNyVzlKRzhtaHdrYXZFZ2xqK2pMM3NN?= =?utf-8?B?bkR3NFpEU3RVc0NWSGhFZld2SVIwSno2THM5QnVTTjFwdmlrOGJCSElNZUZl?= =?utf-8?B?TWhSNFN0S3ZzWENRc0VLV1lydDFDaTdMTFNrNmIzWE9KaEVGNERSSmpENHJq?= =?utf-8?B?Wjc1M0RHOUN6S0RuSTRYK2dhUTdwK1NnQnlNR0JMcE90bDlqQVNiVEJlYjJw?= =?utf-8?B?aGlSUFcxVjdaU0pQZFJUa1pPTE1yemYwdU15STM0Nkc3WnZnT2VQd1I2MFZ0?= =?utf-8?B?cDhudlA1SnEzdFh2aFdaUGl1Z2sxOXE5WUs3MWRwSEFxVmpKSXNkdjNKYWs3?= =?utf-8?B?cDNmOWFqOXNtSDREd2p5N2JxcGRQaWZZU0RFV3N1TkNwVFFtbUtjc0ltcDBQ?= =?utf-8?B?L3JyMU1mbWkzcVAraUhRNjNTL3VqK3I0VWJxVUw4cWdZNGpnUlk3cnp4UTNr?= =?utf-8?B?MFp3QTlGTHAxVzVqaDZVY3hTa1ZPK2J5eWxYblFFKzN0SVRhOTBoV1RLakt3?= =?utf-8?Q?3aWAx6jcwi3mtFtiNNHSaGg9n?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: UGGUqtPsux7dHia+fq2le46bB+NJWdbhs120FRx8/Uaccshm0J2yCMpLo5eofblv8cpeCSBX4hhcaMRf6ZFMiAriSQmCHW0jhBaPjrA/6GF26jzaFWsUcOvE9iPwbyzi223jYKnVXVitmbyjTmwbVLyuWcDezA8cuhe8+sNM0UyQ1wbRCqAxXlrKzbl1eAstCUkcRPORTbeNWczDUdvK8iPTQNM5cPaMjWQnZe2mggWN1zSuIuMvg7YpCUARBQcAnZtf2WLfpYXkehdiVHTqlUsyEhvXtsq3dfSkakFti06TiQe5v/k6ceItofaQrUwIOqJDpkGGiJg9nGWFYONx8IVzR3lJROCqoWx4Sp0Fs21GrmpwqTkwPfxsFA24Cq8rfjC+47s2OI8lRCTJiGhAKe5XQXiuipSDSbotx8K/IAuu6NQkEcaP0lHbz3Z1i8wBXP1Nu4RpM2iRuH3QQJahkhxi8ybZW3OMPt3nzsYrixp+btGxjEiXjingnDc5hb6FzCZTza9Yo04kAVMORHmChRlL9F9hNm+zoibZTxU3F1ItWpMTcSNruooOgunPw5qgoRbWSH6c+ACG7mWsbeyKm2xmo7XfuSeAk863Uk+dcNY= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 76d0d6dd-07af-4845-de2b-08dd461a76b9 X-MS-Exchange-CrossTenant-AuthSource: PH0PR10MB5777.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Feb 2025 19:22:43.2830 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: XQ5PTYDY488rUqFSVaAvg4CryXWRAH5VS+y15vT3bdKYGF4y3yfAFuxYymVixnAVvbkSgfIvlG2FwmKVm0Uwug== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CO1PR10MB4756 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1057,Hydra:6.0.680,FMLib:17.12.68.34 definitions=2025-02-05_06,2025-02-05_03,2024-11-22_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 mlxlogscore=999 phishscore=0 adultscore=0 malwarescore=0 bulkscore=0 suspectscore=0 mlxscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2501170000 definitions=main-2502050146 X-Proofpoint-GUID: pQtSaPCGBzvWjXQckjNLRmeSr5xU5iZJ X-Proofpoint-ORIG-GUID: pQtSaPCGBzvWjXQckjNLRmeSr5xU5iZJ X-Stat-Signature: owkrh75po79kfgec54ph1gktctg39o83 X-Rspamd-Queue-Id: BD7CE1A0008 X-Rspam-User: X-Rspamd-Server: rspam06 X-HE-Tag: 1738783378-642401 X-HE-Meta: U2FsdGVkX19b3XUVsXEYdxE0mv9YV8jrTRhHdZ2pbk+1hltmUiiZqEltMq9P541ycRCLKG/qhIXzzXOICtJK8+qZAmKn5Vm/W9fpCwGaIy1lNYqUipkTxzt7t3p0yMqu7zH1XVN2hsBpikBhQwVhhElC9wqM6zPT8llrzpvJR6G+WIJSN/VjABEyoh98RM+Ro/7yO5H2+A96gzL7FRrIy4hmqFY5+AXCmUhoieW2lBT34f/1jL1qLEdzIExZiNJ5LQ3Go6utj+30ZnhAGq2qHwwRkGITzcjo4z/W9cuywUuEafsOZhvHUkNP39Jvhnxa5gCiACSpDzj4Fifk17FFwaeFYMDLCqflp2QRtROJtGKdWZGuJXS0lfJaHi30pvwmU8gKxo4utsuUWeZjVwImivUZLw4cA4T/0LiQkTWxl9WS7jF1D9FU1lef/5IbyTp/5lT3imdf9zoDrx50os/RJ/S932Xw3KupHCVnqnhJ6Q8N0iUmOABrB/7WA6b2Yae5XWBr/WDGRb4axFwkCP4eCdzTkFycGFYNL2aLosHyaTU1NhsmOE5iwubpA6febr0h0f/ch3QfBPhu8YHXIiE3Y5Hd4fdyM+dvsaNK9dsmx1P5tQuBbGO0qcOh3uvDsHcwd8nSzg6Kxl/AvMP6RkBe22xZNXuwWpAdwTJ3bmUbaINBJLKW84XGpLlj94dBbe3knbQ4lyHYRhRuhBpQPjgyku5/zOjXKpJiBMJzjXX64bX97YPLaTNDgO2c8ttvcS18IGkU9eW1W4ud9WoC5BAeccx+KoWontvp3l2DFWJnSLHzW5FzUbccBMXt+Ojn9pmGpTfIPwoNAzHwXBFcFRFzI2AwdHIaV5ZPiu7Aw2eBD3SKW4FTPk31W4OiyhFicA/K3P6DDXQHCf0iKZ1FakWG9psnzQF7iDFwTxR37uXgSWUCLoRX922YS0aUmBSbOpAGPZ+Jugd3X5NEA86H+lk uuOvDr/Q izXAQ4EMYqu+1b8YFr5AHSiJi2/uc2oBYmUpONB+J6CniuFDrw9X3FUsnN0lsHXiXcZkXJlAzZoED6CFRWM5X6RMlgU0t59tXY6Tw1fgR0CCXZJDHBKLLhxXOja7zPLBEtt41ZihXeNxC7S0pDv3L3oka3CaM0dM+fz2jdzDr7RLk7esamrE9sS0PM7ttxgAKlz35qJpDSU4qzL/EAxgEAcTg/D0hojHCNsF6N3vJlcyEEEDqgG9kqKYqtIjIlAtO7YMD+eszvEm7FNp6/1tag/tNAq4Kia1+S1cSdssQOtEgG/6ewn8L+2MHbdgN7QVQe1RKVRhVbq6u3u/PL1D6YI9T7xzQf2LERH3/Lig5BCXAVj05jVuj8iYn9Yc70Bbus95M4xCgCGcpB1QY6jFm3SHLf+Vi4iDbhfXGqnFPjjNH4J0IOeUkg9+ZoTXc+Qsu75eMXK9oPKp1ujMmOyhDX8AAoFt1aREzgdYUjmkiDU/8B9KSsY0Nug9Bb5HBr+CZ4OIpbRPvYpuwgxP/NOomAzGMp8TWyhyhLM4zjsWgaRUbxIzeelSSWRd9AyGznmgx6CuMKJTAMK3SeBW8kLhqh34IOY72kgIqRVbPr8OC5uNnQWPzXyvtsBjqOMu26Dd8kUThvU2v+U/LvWg7P0HiU2H6LZwwT2vQqCxNNORD0f5J8HKppBVkOMaNFONNFbHR7ER17xQj8oqjehk= X-Bogosity: Unsure, tests=bogofilter, spamicity=0.500000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: * Alice Ryhl [250205 14:13]: > On Wed, Feb 5, 2025 at 8:10=E2=80=AFPM Liam R. Howlett wrote: > > > > * Alice Ryhl [250205 10:24]: > > > On Wed, Feb 5, 2025 at 3:38=E2=80=AFPM Liam R. Howlett wrote: > > > > > > > > * Alice Ryhl [250205 07:10]: > > > > > On Tue, Feb 4, 2025 at 4:46=E2=80=AFPM Liam R. Howlett wrote: > > > > > > > > > > > + let vma =3D unsafe { bindings::vma_lookup(se= lf.mm.as_raw(), vma_addr) }; > > > > > > > > > > > + > > > > > > > > > > > + if vma.is_null() { > > > > > > > > > > > + None > > > > > > > > > > > + } else { > > > > > > > > > > > + // SAFETY: We just checked that a vma wa= s found, so the pointer is valid. Furthermore, > > > > > > > > > > > + // the returned area will borrow from th= is read lock guard, so it can only be used > > > > > > > > > > > + // while the mmap read lock is still hel= d. > > > > > > > > > > > > > > > > > > > > So We have complicated the locking of the vmas with rcu= and per-vma > > > > > > > > > > locking recently. We are now able to look up and use a= vma under the > > > > > > > > > > rcu read lock. Does this translate to rust model? > > > > > > > > > > > > > > > > > > > > I believe this is true in recent version of binder as w= ell? > > > > > > > > > > > > > > > > > > Yes. The safety requirements of VmAreaRef is that you mus= t hold the > > > > > > > > > mmap read lock *or* the vma read lock while you have a Vm= AreaRef > > > > > > > > > reference. This particular method achieves that requireme= nt by holding > > > > > > > > > the mmap read lock. But there is also a Rust lock_vma_und= er_rcu(), see > > > > > > > > > patch 4 for that. > > > > > > > > > > > > > > > > Right, okay. Thanks. You can get the reference by only ho= lding the rcu > > > > > > > > read lock, but you should hold the vma lock to ensure that = the vma > > > > > > > > itself (and not just the pointer) is safe to use. > > > > > > > > > > > > > > Hmm... To modify the vma, you must hold the mmap *and* vma wr= ite lock, > > > > > > > so holding the mmap read lock prevents mutations? > > > > > > > > > > > > Sorry, I think I confused things with my answer. Your code is = fine. > > > > > > The phrasing of the "only be used while the mmap read lock is s= till > > > > > > held" made me wonder about further clarification on the locking= here > > > > > > (because the locking is confusing). > > > > > > > > > > > > Yes, mmap read lock means there are no writers that can modify = the vma. > > > > > > Essentially, you are using the lock to ensure the entire vma sp= ace isn't > > > > > > changed during your operation - which is heavier than just lock= ing one > > > > > > vma. > > > > > > > > > > I could extend the safety comment like this: > > > > > > > > > > SAFETY: We just checked that a vma was found, so the pointer is v= alid. > > > > > Furthermore, the returned area will borrow from this read lock gu= ard, > > > > > so it can only be used while the mmap read lock is still held. Th= is > > > > > ensures that there are no writers because writers must hold both = the > > > > > mmap and vma write lock. > > > > > > > > How about just changing the last part to: > > > > > > > > Furthermore, the returned vma is still under the protection of the = read > > > > lock guard and can be used while the mmap read lock is still held. > > > > > > Well, the important part here is that you can't do this: > > > > > > let guard =3D mm.mmap_read_lock(); > > > let vma =3D guard.vma_lookup(...)?; > > > drop(guard); > > > vma.foo(); > > > > > > since that would use the vma after the lock has been released. The > > > reason that the above is prevented is because `vma` borrows from > > > `guard`, so you can only use `vma` while `guard` is still valid. > > > > > > > But it implies that this isn't valid: > > > > let guard =3D mm.mmap_read_lock(); > > let vma =3D guard.vma_lookup(...)?; > > > > vma_lock(vma); > > > > drop(guard); > > vma.foo(); > > > > vma_unlock(vma); > > > > See mm/userfaultfd.c:uffd_lock_vma(), which falls back to mmap read loc= k > > to do this if rcu lock + lock_vma_under_rcu() is unable to lock the vma= . >=20 > This patchset does not have the functionality for doing that, but it's > definitely possible to add. > I don't think that's necessary right now. It's just that I read that comment and it seemed to imply something that isn't strictly true with the "only valid" part. I think? Is rust doing something that makes it true? Thanks, Liam