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 94A0CC28B28 for ; Wed, 12 Mar 2025 15:51:04 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 39F25280009; Wed, 12 Mar 2025 11:51:03 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 34F1C280002; Wed, 12 Mar 2025 11:51:03 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 17BC8280009; Wed, 12 Mar 2025 11:51:03 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0015.hostedemail.com [216.40.44.15]) by kanga.kvack.org (Postfix) with ESMTP id E6D8E280002 for ; Wed, 12 Mar 2025 11:51:02 -0400 (EDT) Received: from smtpin04.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id 6C65C1CADE9 for ; Wed, 12 Mar 2025 15:51:03 +0000 (UTC) X-FDA: 83213337606.04.55F93FB Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) by imf16.hostedemail.com (Postfix) with ESMTP id 2B84918000D for ; Wed, 12 Mar 2025 15:50:57 +0000 (UTC) Authentication-Results: imf16.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2023-11-20 header.b=UDjDbIKs; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b=FItRgatL; arc=pass ("microsoft.com:s=arcselector10001:i=1"); dmarc=pass (policy=reject) header.from=oracle.com; spf=pass (imf16.hostedemail.com: domain of lorenzo.stoakes@oracle.com designates 205.220.165.32 as permitted sender) smtp.mailfrom=lorenzo.stoakes@oracle.com ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1741794658; a=rsa-sha256; cv=pass; b=njTYqKlEpCg3Sp+nakOCmzKSLo9tkC1qxkniAbqFVAoTPtXCwP4da18RxKCiwz7ZKxEPYW TsvEVg7ueiSTN93CDt1tirwrqYUfNtCmGTwfPsd3NpGZ70xozb8AfQiirb53l2l2QCbFKT zp18G9rTPgAYl0jqRTE+eBs3j3+8x8Q= ARC-Authentication-Results: i=2; imf16.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2023-11-20 header.b=UDjDbIKs; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b=FItRgatL; arc=pass ("microsoft.com:s=arcselector10001:i=1"); dmarc=pass (policy=reject) header.from=oracle.com; spf=pass (imf16.hostedemail.com: domain of lorenzo.stoakes@oracle.com designates 205.220.165.32 as permitted sender) smtp.mailfrom=lorenzo.stoakes@oracle.com ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1741794658; 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=k6iYwvhxYUyPeAlBGAZLhsrbdLeLXaCXB23z+xipcTs=; b=e78c47T+hNAgDrIrbV2Ln8D7Hgg2xTMDP324MF87U278k182FdUkYe6KnCMNJgL15odCvz 0IgMg6oHrzBWdx8MNCG8BPt5W+j3TKi0id2jS5DBr6lcyNlX0N5By2W5XD1lXOBeuTuUUu kwnMTwUw3wPM6uMs3GK/m3FI3MY7M8c= Received: from pps.filterd (m0246629.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 52CCEXtZ025269; Wed, 12 Mar 2025 15:50: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=k6iYwvhxYUyPeAlBGAZLhsrbdLeLXaCXB23z+xipcTs=; b= UDjDbIKs8c079fz+VXHwxOiFkqgs7J1bd/C8FBf+QDE2Bp9qo/fYsek9PUbDKKWy xhx0m6eiF/Fz7LToUaHF51FKZ1ujaSjINq0Rcc2/VyDLruOPU+k42Dcws8KTO+J8 fwo51jOjAa5Vow2RUGkBlHMX48rCY5iLSRXZ480p34wccOb39xBEbFhoQW8Phr9b Dk16Ce66jytKVHdY70+hlVrKYqMKQqzkbC25HcAzyajfF0vU/H7OYukCYiSPV8am ioyz1UaLPnVhshmxqNNWlEin6CUSh09Of3eFrZwd1slRM/gpGVhlxAq9UVEOOEO1 QlbrsvDLEIKqlst/RjjRkg== Received: from iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta01.appoci.oracle.com [130.35.100.223]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 45au4dt45x-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 12 Mar 2025 15:50:46 +0000 (GMT) Received: from pps.filterd (iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (8.18.1.2/8.18.1.2) with ESMTP id 52CEgtGp012293; Wed, 12 Mar 2025 15:50:45 GMT Received: from nam10-bn7-obe.outbound.protection.outlook.com (mail-bn7nam10lp2047.outbound.protection.outlook.com [104.47.70.47]) by iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 45atn1ese7-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 12 Mar 2025 15:50:45 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=p3y924t7oeKy8HEm61ZobFmynN9HGKTnqRjpfe87CzCj5fjWko4sXexwH0fM7iYCW+RKS6lTzvhTEMxyhL++gKW2+DGn31YBVnGR7OL0ivRYtRSCp8Y+WRwmmUiEbkoaVjCoblXALNMK8gV/egCaclcpXm2sFTB7JaPpzL/Uaol9ZV4dO+py9lunfxhNqXGW1lon3tzm1Asc+cTGEVeG+H0FDbT1OSjO1BsBRc+mCydk+VuU6K/hakpKUCwjfGpTynvFJYe9EuZMGHWht+N3MF0BEH/Zcpt3aRMz7Jc9uP9rlCnFMYOxyxD/NbDIPoW9EwbUR7m9k1pjlmLYmezzBw== 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=k6iYwvhxYUyPeAlBGAZLhsrbdLeLXaCXB23z+xipcTs=; b=rfsgnS2vKaSSRTARH8wTnos3VZAIBXbHgKwup9ARhKYBos0WmR/GXJJ0H1d2YXvuIhAlaKB1BMKIP5jwzSQXVj2mq+bXCik8zRMhhi1bi8rPgOFx9GZHtGen/OkZeB0lPtEd93esZcEPvnPCFJFUgGaQITaY/Sx6lyjLtACEKAJZ2TX/oxfTEjTrKfkCGpYXhdBKEvPznYR1TE0pdZfRkncSGI2o/3PdXUnM5yq9QLb4WUwHWlAxs7bVNa6z8HrvxvvGszWEuX6aDyH7WRe0U/WFZ08+Dvc1k8diG1w/XvXxOzVvrJDr6Ar7Fy+n8H5tzXhRKTJSuiLJWXjaSyVtSQ== 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=k6iYwvhxYUyPeAlBGAZLhsrbdLeLXaCXB23z+xipcTs=; b=FItRgatLjnBDie+mXKdMnvcIJ0pbgmGIbltpeSB/l51RgHekehWHGrhicA6lVMYYeutGEKDC3d4f5/WClR/NJrCLfmw46b9J2UK8EnLeB4TZOGjowfEy73y9AWusGLGGQ05WS0qeoI77vwBGgftcPITd0+C4RlRQIMPJZSVhOeI= Received: from MN2PR10MB4112.namprd10.prod.outlook.com (2603:10b6:208:11e::33) by CH3PR10MB6716.namprd10.prod.outlook.com (2603:10b6:610:146::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8511.28; Wed, 12 Mar 2025 15:50:43 +0000 Received: from MN2PR10MB4112.namprd10.prod.outlook.com ([fe80::3256:3c8c:73a9:5b9c]) by MN2PR10MB4112.namprd10.prod.outlook.com ([fe80::3256:3c8c:73a9:5b9c%7]) with mapi id 15.20.8489.025; Wed, 12 Mar 2025 15:50:43 +0000 Date: Wed, 12 Mar 2025 15:50:40 +0000 From: Lorenzo Stoakes To: Kees Cook Cc: jeffxu@chromium.org, akpm@linux-foundation.org, vbabka@suse.cz, Liam.Howlett@oracle.com, broonie@kernel.org, skhan@linuxfoundation.org, linux-kernel@vger.kernel.org, linux-hardening@vger.kernel.org, linux-kselftest@vger.kernel.org, linux-mm@kvack.org, jorgelo@chromium.org, keescook@chromium.org, pedro.falcato@gmail.com, rdunlap@infradead.org, jannh@google.com Subject: Re: [RFC PATCH v1 2/2] mseal: allow noop mprotect Message-ID: <9b3a3ac6-a947-4be2-98b3-c35c195d87ab@lucifer.local> References: <20250312002117.2556240-1-jeffxu@google.com> <20250312002117.2556240-3-jeffxu@google.com> <64B6294F-B059-4744-8548-89D7B519BE72@kernel.org> Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <64B6294F-B059-4744-8548-89D7B519BE72@kernel.org> X-ClientProxiedBy: LO4P265CA0261.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:37c::14) To MN2PR10MB4112.namprd10.prod.outlook.com (2603:10b6:208:11e::33) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: MN2PR10MB4112:EE_|CH3PR10MB6716:EE_ X-MS-Office365-Filtering-Correlation-Id: c58465e4-41eb-4d64-5379-08dd617da56b X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|376014|7416014|1800799024; X-Microsoft-Antispam-Message-Info: =?utf-8?B?cjBjdXF2ZDdiZk9NTlFmdVJRQVViWUIvb1pPanNMWCtlZzRZckJqN3EzVlEw?= =?utf-8?B?ZmdYUmtrMzBhQ0YvTzJFSjFnSU9LYVdSTVE5K3FyNDR4Q3Q3N2NCVThySnZO?= =?utf-8?B?a1dycjNqZVgvUldQYWJOOVFzb2lXSmk1dEdpR09BcHprMks1d0tpRTR6RHFE?= =?utf-8?B?VWRHOWFUV2ZLbEc3ejgxVnJrY21qRGVWaXVnNVVzYnI3eXB6ckoxQVpzM1hK?= =?utf-8?B?YStQWXh5MTJrYW5oYzNLcXJ3QStCbmlObGFKRjBZYi9qM1FRT0Y3aHlmSVpj?= =?utf-8?B?S1hEYW11dGwrK3FtWit2M01TTkdBOUxMaTgzRmMrUC8zcFYvcW1FZFJwQ0Fv?= =?utf-8?B?bFVFZDhwY1lqWGhEMEtndkF2dVpyakpGL0tvVWJwV0NrYVkzR284c2QrZzRu?= =?utf-8?B?ZkMydlplL05pVUpjNHBlZDFnLy83dEVNeG5NSEU2cVVPVkdxN1hwTFk0NFV4?= =?utf-8?B?VkE2S1BFYWFydkV3S3gwdkRhNHdkNmNjUzU5eXh4UDh3c2tnM29WTGk0YWFx?= =?utf-8?B?N1V5UW1KWTZGKzZvbmhwUmxNZG1JK3JZS2tYQ05GWlhRL3RvcGhyQ0RycTNY?= =?utf-8?B?SWhscFBaK3Fmb2NOR3JRdERDcEwzOFR0Vmpodk5heXNNeVFzNGZUUW5VSGdl?= =?utf-8?B?ZkJGR2hpdStxbDRreTN3OGFUMXVidGJTYWRWRnhsbWFrRlFMRDRrdmVnQWx2?= =?utf-8?B?R1U2eGFpS3RXVXpNd256OHVUQjZkdDg4SHdTL0krc29lS3p4WEhPRjlwMkdR?= =?utf-8?B?MXFwQlY1S056bmhOYmIvOWl0Z1dXc2pmUGJ1QmoxSjJUQXhSMGpOdk1LeWtr?= =?utf-8?B?N3N1UFpGYmdkL1c2VWhOQW9iZmo2cGJDejN5bjlLNFVOM1NKdCtTall5TFJt?= =?utf-8?B?RWUyUjlMdG5oMGk1S1dZTzM0NWNNVE9penVRa0Y0b2kvdTJUU1pSQVlqSURL?= =?utf-8?B?czIyRHI3c1huTDQ2alp1T3pyTHN3Y2E5bmZDSnMvZTJLbWFKRmdmSHpYVzlQ?= =?utf-8?B?N3llRHVJQ3BvcnJlK21MaVZPenZYTXZWbHVGR3RVYnZvL0ZHNktQelRYSE1v?= =?utf-8?B?VkJzeFliU052WVE4QU9YRnpkYTZQUEtrWmpURFBYUnYvVG4vcEMxY0VNSXlF?= =?utf-8?B?YjN1QkltNFBBNUs4WnU3S0hSUE5FTVByZThMSU11UVI2NDVlaFU5ODE4UGxI?= =?utf-8?B?MlBpSS8zaTlPVm9MNGtnVkFzMGpaWTg5N1hSRE1xRWhuaG9GR3AzZXpCblky?= =?utf-8?B?TllMRnZGUEVwNDNDMG1GV1lSMXo3OGQvTTJUL25DQjlIYTRCWXhDTDkxdGdR?= =?utf-8?B?b0ozU2RpMHNpajJzSEhDNHluMnJLMjgyWFNKQ1M5V25IWm4vN0N4UVExeUc1?= =?utf-8?B?OVR6RUw0M1lnREdyU2IyRjd3emROcWF1V2I4eHlyQWw3RXRSU1grK21lbjJ1?= =?utf-8?B?cDJreG51bWJYRk9xa2ZoRE9kQkNwQTFuMEkrS0lXVm44KzlWQ3k0V0VFdCt4?= =?utf-8?B?MGVCYVhQUUFZYkFrWUZlNHU0NVU5WE1qU3BCcUpMbDlOYyt0eGVtSU12bGpv?= =?utf-8?B?aGVjTkN6Wnd1Z1BmdXFnYnZQUWRSRlJjNGN6M1d3WHN3YVNEdHNFYU4zclZp?= =?utf-8?B?RGFEcjMwbTNYMEhPTFIzZFdyd3phNkR3bGlLMFZBeU1TY0FueWVSaWR6N2JZ?= =?utf-8?B?VEZsZ1RFUldSdjQ5Q1BsVWJKVkQ0cnJLVTRWeTgvZlU3ZWJPcWxwRVFJdnZs?= =?utf-8?B?SVg5WWNDeDU4RVFNTTdGdlR0L0dTQm9IdlQxa2MzbERvTkphK3dMY3dtRTFq?= =?utf-8?B?MUxERmhZL1hjY21jQ05nUHJ3Y1BadmdJS1N6Z29sODBPd21DcXNHWnVWcENN?= =?utf-8?Q?kbVg7N1ip2TiC?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MN2PR10MB4112.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(366016)(376014)(7416014)(1800799024);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?UjZOMW1tMFdhQWhJSGVUQ0ttVzFXRUJYWUd3Q0I2eGkxZDNiRGQrM1dJelNR?= =?utf-8?B?R1J0L2VQZWh0MlBIbUN0WWp3d1FYendJdzUycnpORlc1VXdSdzdsVXc0UUpH?= =?utf-8?B?UnRlNXdsS3JzaDhYWFFXYUtKQ0wxRG53R2p1ckRub21wVGJGWGp6bFNXcDZ0?= =?utf-8?B?ZHpCazZLM3REUUI2Z2I1YjNrcjY5QS9ZK0RRVFFGU2pQOVQxVkkxeXRwSkhE?= =?utf-8?B?VE9GNWR0RjZyZkRSdmJyTjZFZnp0QU00N3QyMU52T1NhdDRBT3c0UzFGUFdn?= =?utf-8?B?WjBaM3V5WlVNeXE2NU9ydmNYQUttdURJZTUxcXRkcEkrMWhJYU9xVkh2NVp1?= =?utf-8?B?YWVjTDhNd3F6aExkTG1vSVI0RVQ2UTRrcHg2a2NyZnBSVnorM2hBNGt6dHNt?= =?utf-8?B?QkVRUVBBMFNsTG1QUEpBREpmbmRMSitGWU9Nclo0ckNyU3F0VlJyZlZQdDZD?= =?utf-8?B?QTl6eHBMcHFLbld4YnMyWjZjdWFWQzdkTUI5ZGlYS1RBNXlmSWdlSUtTdTdW?= =?utf-8?B?MDM3SDUvWExoY3ZTVnF0NkZDR0VDbjJIdElhc2dUK2dqM0haZlkyTnQ5dS9T?= =?utf-8?B?SGZubkxZdVVvMGhpT2d2akNTVTlCWnlrMGJqOE1PekZSR2I3bm1kN0NtaXJY?= =?utf-8?B?RWFZRW5OZjRteHRoajEzT0dVMXpNL3NwN3NMa011dklna3NSNGg0QU8zZ2Iw?= =?utf-8?B?Rk9IcnBRcGh6VDZyWnpXNE1Rb3BZeGRiSjNKczg0WWhsS0lCUG1VMCtYVnRn?= =?utf-8?B?UzdCV0hVaklRZnJGdW4zLzEwcytuL2o4K1c2cE5WeUJMRXo0N084VGYySytF?= =?utf-8?B?OHpicWJsdlkyb0NJYlFzeEUvTW96cVpuLzJXVzdIcXRUUGdKbDlObFM5VENK?= =?utf-8?B?TWxuTWJZQVV3VjVsSzRoeGphQmNOS0J1NUpqSEQyMFZIV3FLZng4UzFvRzNV?= =?utf-8?B?SHpaNWpvYldzQkhMRDA0blRjRDRORkIzZ0hFYURwdG1FUTRkV3dBQU5TTjFk?= =?utf-8?B?NmxjSXZ6NmFCeUZVMW4zcE5HZlFkb1A5OHR1RXBrSzQzTklIUHJqRDJQU0Yw?= =?utf-8?B?TkU5ZVpTODdpc0dBd0x3ZEg4OEhRdStZZzJ3UlZtVkpJVUY0Rmp2RUV5dnRh?= =?utf-8?B?Mzc1eXh1Q3NTUFh0Q0hOdGF5a3lFZ2s4Z3pIelZaS2dxa2VSYk95WEhHbUhU?= =?utf-8?B?Z3p4aDRSb25NMjZuRnNRakVscE9aa0czZlZ3ZXBvNHZ2c3pOWHJtcmJwQ2w1?= =?utf-8?B?TUFXaUVxN1FFR2NFU2JVT3BCWHR4K1dVb25UdTZPYUxoQ2VZTHVUa3J5Ny9s?= =?utf-8?B?MVdxWG55SXUyMi91MjNtR01GdGpLSnNSMy9EM1psMlFmdUFpK2puQm1aSmJM?= =?utf-8?B?TklTR3M4ZnVFUUZiT1RZb0FvQ3FQZ2tYMjhpejkrdERpMTRrNTNXYWVWUGZq?= =?utf-8?B?eDYyUTBMa0l1Ui9KYTR4TEhTTGZQbHdwdzRpMlI4OW9idCt3Z3NYNVd4d2Rw?= =?utf-8?B?REF6MWdFbHFYYjJCSXRmaHc4K05jS20wLysvV2s0bTF1UFZ4S1FDUTQ5Qmxn?= =?utf-8?B?ajl3a2pwd1p1Qk83LzE1bGg3Z21XRS9VMlBvbWQ5SGNCbWRabnZWMzJjUHF0?= =?utf-8?B?SllZeXJaTXNCNnFSNnJTUlhteW1mVEdJVFMxNkszMEprTzJJOW0zWWpvMGJy?= =?utf-8?B?a0tCcE0xNFZiQVFBZ0ZWeHh6ckNrWlRDU211M0RJTWIrUjUyT1YwOXo5T202?= =?utf-8?B?V0FKMUpQQVZBVXcwRTlWYnNSYVJaWjA4cmZiQ2hGWlZjcUlCVlNpZmUvaWZu?= =?utf-8?B?c3UvVVJvazd3MWNIZGpnS0FBWDh5elVmeEhnaDE5cHMwcGp4cDNOUUFEYVZa?= =?utf-8?B?bVNNaDIzcnI0V1hqZnE0MUs1bkpsY0Qvc3cyaFdNNmlTNVlQTVlaN1M4ZUov?= =?utf-8?B?Wk0xU2cwVVU2WFo4UG45dnNXU2lkNnhDVXovbUtMdUE4Z01PeU1mVHhFaHAx?= =?utf-8?B?MkpVNVB5K3FnclloT3dCMnVCK1JIcUJ6N0FPZUpBS2xQWUtkNGhjS3NUdUdZ?= =?utf-8?B?c2RmTnVGbE5QdGtTczcwRnM5QUNMaXZCbE40VnZXaUw1MWE3dDBIVi85N3pD?= =?utf-8?B?RDRMVTY5SjNsNDdDR3FYRXp1bVhTR1o0SkxGMzBzUkttVThNdVpUdzhpcHpk?= =?utf-8?B?eFE9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: EnHkY1cMixZBHbr8DipXH7f/nh+Zv3MUKkZy6janMEh/tAxb7+NsTKf41BhS4ci6lzJvifJJmyUacszQPs/44Ssw4ue6w9GH0X1Af8/QPiiFe01hdE3HjMB3Owf8T4hVHUsV+vPm2je8oP2JfBAum0uY+OLcMeqbCozqL0z7ZSPsSvodDn7HxNLzATTNKSGw7oCg54yC0ywYxhOVB8ky5EX7Lk5kPvJTNw6TiGcBq3NvFNg/0vsIIBGAkxsra1qrkpNMUJVaTnkmjzZ155Np0FdowGp+8+29OW9yBYHp0r4BZ8tEuexRfXOV1tkjcf+tdrLxDF40F+dxoXGt7KqGGwCb96vyH59fIFYhP3FQ9iRapGMSYL7mrNiQFVQbLVxMc2UrbehLpUQ3RcMTsfcD4TBKHiscVDN2I4dRq1hTF2V2MkviYnpmuPadMkqPPlc55OdyT6AjoDanqMTjQT9VhQ52qT9GPudO6ReFsempOgGcWCKx4uA3dK3/PRamXi4T+nFxt+Zt00FENRTijqBTlhX6Bi4dmUX0yNqf+a+yTUvG0eIWnY1Q45puOMYNxhFMbBALi5VH+X7sFuT7tZULp6wFjNVmCG4nbxFXfIwxipQ= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: c58465e4-41eb-4d64-5379-08dd617da56b X-MS-Exchange-CrossTenant-AuthSource: MN2PR10MB4112.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Mar 2025 15:50:43.2400 (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: 0v09gOYjVcTTQDjes30SOMKEj8C5HxpoC654seowJ1tvG0Gnk+Qm/o046QDUlsFGuVod2pgQheSCBkPrUs3l3eKVRvdO6HuMucINA011gVY= X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH3PR10MB6716 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1093,Hydra:6.0.680,FMLib:17.12.68.34 definitions=2025-03-12_05,2025-03-11_02,2024-11-22_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 bulkscore=0 phishscore=0 spamscore=0 mlxscore=0 mlxlogscore=999 adultscore=0 malwarescore=0 suspectscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2502280000 definitions=main-2503120108 X-Proofpoint-GUID: t2b6vg9ZRRteJB0nhktlDfW05lMNTcHv X-Proofpoint-ORIG-GUID: t2b6vg9ZRRteJB0nhktlDfW05lMNTcHv X-Rspam-User: X-Rspamd-Queue-Id: 2B84918000D X-Rspamd-Server: rspam05 X-Stat-Signature: 9isr3ttbii7ouaazieonw4yow1wjojwn X-HE-Tag: 1741794657-16966 X-HE-Meta: U2FsdGVkX1/G+fAC2tH3li9tN3gObXyR7ltD7zVNcfOUno2gc5IW9OUxfnGwZFpnfKX8tcXJSMRLr+G1NZvA+9Ejjala3S96zUSlUSKNxSrb6VsVG/8XJfINJVzLdTZ4fXu4ggiK1O7L3A6RHGACL/w7rd9IrwRU6ucqAKgdxUr4P7xabm/BIsS0ZfZVKoUZ0SAJtbM2hAX6W7/ScGt4emuDmUJiQMcjp9Tjkxq08lsE8Q6PdNi38qtUkiM5TJlw5sesCcUWB3k+gC26r4vMZ4TgbGI+W5+iCQRFvY3fEm967uvtuHyO0K9cfZHBwgpBlVx/j5H0KfuWms0zH9SPLImaJWD1OjtoTtCX0tCrM7zPxdpVosIfCcc1LJTQxAqRDQ4Dn+aqgRfGQ6ClZwEKgX7bIOSapKF7N5pkJoHYOJDQ2tRWnUD4b95U2CEu4HJ8jcW4LozmZAjvm1pcu3wkS0LdNLxtZcqeF253SEb3uvHdfDNwWfOm5bq5fDUdinADOfeEm+7IltHkesVKYD/Qsc2wo6CsFwG1/VowH9zSCHajpYuNJcMbucoQBVqlfHxPNdwcAcFDeKkUPCms84ZIA9rUsWbo7NP5HJ+1iESIjY3LRe6CNB2Ftq3yRSKrNLFi6yWkFPnLeSu5vgOWY4csDLA8ziBtikVsZdAWhSaAGDfR5I/7mzopdMaEaSZQHkSbopeTD0Gb18h1aKmKw9sxVHtK//UbKHdSGN2ZGID9KGDI/MBPm1ES5N8M9ZZZJRXP1nTJBdzCtsmztSUuyKhWRMV1h+SVqWybnEuZmadSF9ktBqriqj96//J6LPDXqDXM5Crz1Z1McpOO8fnq2yUSIsl2XizAO6G3iSFMe8eA0nKWOGzwfpWfmO5UmxsTLDAYqrhVNRTsE3Ub+JDrwP9ryt/adB+DguV2GhYj3apKVRK6zu+Y51RHdhOoeTWN6TV+HDcH0OSZmYgD75EKfMX HitHO3iC tgzbku71OzL6Qi98jJC2n8gtwgIQESBBHVNGN8tM0zLIwsgvfdMqAwdxcPhXaClreauCuYkO5qnQtIWT25nCgdhAyN4EGk+YqPkJCNSVHG5mYdzV9PostFR2qbz3C1n7TggBGzUv+PBp9L91Nj0XJ300iVQLNz9u5DapKc08Qqo1SbRRXtnEgS+D6yplU/q+FkM7OD1DosM5bJr1p5l9BXcXHqxznHLgW98zceek6s5gHa7gT5E/JvsDWdHjR2lGlKyfxgWRH934PZZ6itSRHmrCGkNFS2mMZyu8zPSYgZJ1Wrw6E6VnbgbTQxaSgrLoFh5wcZGQhj2kFsvpiEY0VrJq13//3YZN5q/J1N6cb+Yh7gwYy88ZOSec1DV7CzcAzsuOA5G+rUknKgzhMEHmZm7oe7xTIh2DT+w0ixpxeA/I4EKcer8SJKllYRHXprydERDReCTEeczCjXUQ+s8AB/TnZ9BfVvwyTpgE3hv1TQ/JN6t1vvpTaCpFo9HVJfeAukrCDyUNm8ouC+XYpVwpwbplQUuiqiTf9D2NOOALdJhZIGZ/Ntf5l6lHsqDjZSNF1ePN1nmKTSYAc2PtQQEIkzVTzO4rcTJqvzzFjtBt+1zekAD1R6i12GRFqhcS2Qk7+ne+FCyGG4AzrpIT4IMZPh7AVAnoWY+xDsmVHBeWQWzTso788gMklxRRjtZ4+Qm3O6QLW3HfPV1KK7PC0hPcH5XjM4p3VaIaxlsG2dovc8/60/Vedi24kKE6c6pBnDwVz5+yDYiHYNPSacR1RpRONpEdC8g8EwJDirw0n X-Bogosity: Ham, tests=bogofilter, spamicity=0.000002, 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 Wed, Mar 12, 2025 at 08:27:57AM -0700, Kees Cook wrote: > > > On March 12, 2025 6:49:39 AM PDT, Lorenzo Stoakes wrote: > >On Wed, Mar 12, 2025 at 12:21:17AM +0000, jeffxu@chromium.org wrote: > >> From: Jeff Xu > >> > >> Initially, when mseal was introduced in 6.10, semantically, when a VMA > >> within the specified address range is sealed, the mprotect will be rejected, > >> leaving all of VMA unmodified. However, adding an extra loop to check the mseal > >> flag for every VMA slows things down a bit, therefore in 6.12, this issue was > >> solved by removing can_modify_mm and checking each VMA’s mseal flag directly > >> without an extra loop [1]. This is a semantic change, i.e. partial update is > >> allowed, VMAs can be updated until a sealed VMA is found. > >> > >> The new semantic also means, we could allow mprotect on a sealed VMA if the new > >> attribute of VMA remains the same as the old one. Relaxing this avoids unnecessary > >> impacts for applications that want to seal a particular mapping. Doing this also > >> has no security impact. > >> > >> [1] https://lore.kernel.org/all/20240817-mseal-depessimize-v3-0-d8d2e037df30@gmail.com/ > >> > >> Fixes: 4a2dd02b0916 ("mm/mprotect: replace can_modify_mm with can_modify_vma") > >> Signed-off-by: Jeff Xu > >> --- > >> mm/mprotect.c | 6 +++--- > >> 1 file changed, 3 insertions(+), 3 deletions(-) > >> > >> diff --git a/mm/mprotect.c b/mm/mprotect.c > >> index 516b1d847e2c..a24d23967aa5 100644 > >> --- a/mm/mprotect.c > >> +++ b/mm/mprotect.c > >> @@ -613,14 +613,14 @@ mprotect_fixup(struct vma_iterator *vmi, struct mmu_gather *tlb, > >> unsigned long charged = 0; > >> int error; > >> > >> - if (!can_modify_vma(vma)) > >> - return -EPERM; > >> - > >> if (newflags == oldflags) { > >> *pprev = vma; > >> return 0; > >> } > >> > >> + if (!can_modify_vma(vma)) > >> + return -EPERM; > >> + > >> /* > >> * Do PROT_NONE PFN permission checks here when we can still > >> * bail out without undoing a lot of state. This is a rather > >> -- > >> 2.49.0.rc0.332.g42c0ae87b1-goog > >> > > > >Hm I'm not so sure about this, to me a seal means 'don't touch', even if > >the touch would be a no-op. It's simpler to be totally consistent on this > >and makes the code easier everywhere. > > > >Because if we start saying 'apply mseal rules, except if we can determine > >this to be a no-op' then that implies we might have some inconsistency in > >other operations that do not do that, and sometimes a 'no-op' might be > >ill-defined etc. > > Does mseal mean "you cannot call mprotect on this VMA" or does it mean "you cannot change this VMA". I've always considered it the latter since the entry point to making VMA changes doesn't matter (mmap, mprotect, etc) it's the VMA that can't change. Even the internal function name is "can_modify", and if the flags aren't changing then it's not a modification. Right, but here it's easy to determine that. What about madvise() with MADV_DONTNEED on a r/o VMA that's not faulted in? That's a no-op right? But it's not permitted. So now we have an inconsistency between the two calls. Should we now check to see if all the madvise() calls are somehow no-ops and permit them? Because that gets potentially egregious, fast. My concern is that we set a trap for ourselves by establishing some kind of contract, implicit or not, that otherwise-mseal-prevented-calls will be permitted if they result in a no-op. To me it's simpler to say 'if we touch a VMA with a call that modifies things, and it's sealed, we abort'. Easy, doesn't set traps, no reasonable situation in which that should cause problems. > > I think it's more ergonomic to check for _changes_. I don't know what you mean by 'ergonomic'? > > -Kees > > -- > Kees Cook My reply seemed to get truncated at the end here :) So let me ask again - do you have a practical case in mind for this?