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 3FA70C83F17 for ; Tue, 15 Jul 2025 13:38:15 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id C62626B009B; Tue, 15 Jul 2025 09:38:09 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id C130D6B00C5; Tue, 15 Jul 2025 09:38:09 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id AB5D66B00C6; Tue, 15 Jul 2025 09:38:09 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id 8AA1C6B009B for ; Tue, 15 Jul 2025 09:38:09 -0400 (EDT) Received: from smtpin20.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id 516D0140498 for ; Tue, 15 Jul 2025 13:38:09 +0000 (UTC) X-FDA: 83666602698.20.5E6B6F4 Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) by imf12.hostedemail.com (Postfix) with ESMTP id C9E2D40005 for ; Tue, 15 Jul 2025 13:38:05 +0000 (UTC) Authentication-Results: imf12.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2025-04-25 header.b=EfElaiti; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b="vBLa+/hg"; spf=pass (imf12.hostedemail.com: domain of lorenzo.stoakes@oracle.com designates 205.220.165.32 as permitted sender) smtp.mailfrom=lorenzo.stoakes@oracle.com; dmarc=pass (policy=reject) header.from=oracle.com; arc=pass ("microsoft.com:s=arcselector10001:i=1") ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1752586686; 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=g2NXKJ/cW2O88FN718GRfshc1bijHstDgT6AtOhTkgw=; b=EyLP0PnA3gJizTboqhAOpLDZjmsWNLP9vpU4jPR+m09DFlCMbvXPvK520Iplz2BtJJBzNQ bxEMbjdluC8Scjqqsu8HbgGgCswbTwE8/s2ocuZjeykSPFVJV3u+ceiMcbmRZUsMBOZy/j 0Xx1mOrJUJKzElDGf10lugFJfoxt1Mc= ARC-Authentication-Results: i=2; imf12.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2025-04-25 header.b=EfElaiti; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b="vBLa+/hg"; spf=pass (imf12.hostedemail.com: domain of lorenzo.stoakes@oracle.com designates 205.220.165.32 as permitted sender) smtp.mailfrom=lorenzo.stoakes@oracle.com; dmarc=pass (policy=reject) header.from=oracle.com; arc=pass ("microsoft.com:s=arcselector10001:i=1") ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1752586686; a=rsa-sha256; cv=pass; b=4DqKsm/xv0AXRrN8LG27ViEHfSd/asHVSA8S5gfcioy/qo5+xmtlPnhBIV2PhdbxVrj3nF nsFccGRO9iJoIKwmgIey7vO9sv1T16NRyxHpzdAhV3u11WCpw3AGfO1+tB1r5yOBkOeABO mQO3TgBDP52cRO4ZgCoiAuchHGxrBtg= Received: from pps.filterd (m0333521.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 56FDZCS7009061; Tue, 15 Jul 2025 13:38:02 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-2025-04-25; bh=g2NXKJ/cW2O88FN718GRfshc1bijHstDgT6AtOhTkgw=; b= EfElaitisTL/u2CzTgepEqQ+ac8p+D6h+U3D2vl9bnDFm4NGtYzMGbz7QQ2deXWG 3W1avuq+kJckMWOuV+Hx8ZjqeREk8mnAiPdXDDqfJNrfO08HHczYPrmA4IICj4wr to1ktM2U1sVs+NQcmmqTBSim4+pa+V6dSl6p7W5YW5s7J9c5btIhMmAh00+xjNum Dcb0V20Xigm3Ht2h0bQyscYF+xHO1sySKWXFTF/dNPG+uQ/Plmnp+IXz7oD9MtH6 i0Oenz3zVQ5LdDiSeWQ2h0iO48Vt1/2x3fyJ4AWmI8NjE4q2oO/xn7rtwg0MkW73 N4w3kfpbnoUix3nHCybqIQ== Received: from iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta03.appoci.oracle.com [130.35.103.27]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 47ujy4pkwr-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 15 Jul 2025 13:38:02 +0000 (GMT) Received: from pps.filterd (iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (8.18.1.2/8.18.1.2) with ESMTP id 56FDARKU011692; Tue, 15 Jul 2025 13:38:00 GMT Received: from nam11-dm6-obe.outbound.protection.outlook.com (mail-dm6nam11on2060.outbound.protection.outlook.com [40.107.223.60]) by iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 47ue59ytbx-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 15 Jul 2025 13:38:00 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=QX7I5l6Ar0TUqJQSIrQOSjsT6PidoNq43ZCQ+UxwL3pmJYTuozlU7Tzwm8bfa94w/N9X6EsuY1gWb/k3McqOkhx53VGsZ0jg3UfQ8RronICIwxdSo64zE9PlaVAgKqqO24LiVIxcI9Ft1pg+aQ9Bl2U6jgahsgW0HHkcXbDniApquOQtJVtCXNytd3SW5pTjRxHmUucE0OQk8vijlX0wBAK2KbgNFYjhJ9KfqbxRfXXEc1kUshz2w6XNvnvW3BFaMKY1PJLPtJvsEfs4vQan55sCyBewXDH1ecIk4oq9VpxwHD5H6WxUUwqencbSxEMEJUwwhx3QsKPBi6/5nAaeYA== 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=g2NXKJ/cW2O88FN718GRfshc1bijHstDgT6AtOhTkgw=; b=HI3kQUQ91oEf5Wehb9spoje6HD3hk9twFxjS6URzj2loyi9z705FlUbezazEjTVCQ7sB1Csm039rKZMhTxzqKYWsihQSgr/jEsC6rSRADFL5WImA+Qm9uUWrr7qRUm9+4oT1/wmYZw3YwWKyRyJDVCK7y5KZcmfT3OUUUHVyuEgcovMTHJ1w2wQMhtgU08sUN3E1+qfbgDSynYgh1QmR/nJEwOu83w46IUx0H5f8+43e+LBSTiIepOzR1i6Wti2ub8EPApM09Tw3n2TKb32e95+P6HclBkvf5dna8NtuTHI5raWJHA+g4oqWMvHn1wTpP++NYKTBgkOSOj+9kikfVw== 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=g2NXKJ/cW2O88FN718GRfshc1bijHstDgT6AtOhTkgw=; b=vBLa+/hgTmLam45SWTDt5uzYDTMbvOjPg85szfg0HcbwcETwivOH8OmHXxu+NdOZ0qLj+OkUXZalhBZ+CXGax1dMAyQwc8tjzqDjgEf45n1QvnJ/J+YtYsrm5XVxEFhcmqrOVGgPhvOPtZI6OPfKKSW4OMWYrHq3r6D/o7khW/Q= Received: from DM4PR10MB8218.namprd10.prod.outlook.com (2603:10b6:8:1cc::16) by MW4PR10MB6370.namprd10.prod.outlook.com (2603:10b6:303:1eb::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8922.27; Tue, 15 Jul 2025 13:37:58 +0000 Received: from DM4PR10MB8218.namprd10.prod.outlook.com ([fe80::2650:55cf:2816:5f2]) by DM4PR10MB8218.namprd10.prod.outlook.com ([fe80::2650:55cf:2816:5f2%6]) with mapi id 15.20.8922.023; Tue, 15 Jul 2025 13:37:58 +0000 From: Lorenzo Stoakes To: Andrew Morton Cc: "Liam R . Howlett" , David Hildenbrand , Vlastimil Babka , Jann Horn , Pedro Falcato , linux-mm@kvack.org, linux-kernel@vger.kernel.org, Jeff Xu Subject: [PATCH v2 5/5] mm/mseal: rework mseal apply logic Date: Tue, 15 Jul 2025 14:37:42 +0100 Message-ID: <1d6abf27d8eac0001f8ad47b13f0084ceaa6657b.1752586090.git.lorenzo.stoakes@oracle.com> X-Mailer: git-send-email 2.50.1 In-Reply-To: References: Content-Transfer-Encoding: 8bit Content-Type: text/plain X-ClientProxiedBy: LO4P123CA0470.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:1a8::7) To DM4PR10MB8218.namprd10.prod.outlook.com (2603:10b6:8:1cc::16) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DM4PR10MB8218:EE_|MW4PR10MB6370:EE_ X-MS-Office365-Filtering-Correlation-Id: 953761d6-17e6-4081-628e-08ddc3a4cff3 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|1800799024|366016; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?HnJ4RK/Dg/HnkCsDUEqnNBsLGVuVUjfJVbruf+M1AbE/FjS5wQGiD01nPuT/?= =?us-ascii?Q?0J8J9DDgfZ32Uzfv8KBXdSpvmp+VJjyQpxTxBdGqY0h8bU91i5EGYhABY8pM?= =?us-ascii?Q?OM8M2xp/1B8WVUckZV+RjQPFA2s6tQPGMoAK9PGl/myYdfVqyJ7Rv+jfZrtc?= =?us-ascii?Q?5B8Rzb6fR0s0NE7M866g6kPU2ALyv1JCTfqkURSf0jo6Q7tUv+IJgaSw13kp?= =?us-ascii?Q?r2porEv/B+JZWBNwRuNvdo5xyD3LFcE4IJoZq13/We8kzr1qNdC1lUNLfvc3?= =?us-ascii?Q?JaN9JdkQyffkInc/zmxG3uvQR7LwaNMMwwKtOUUkDeV76Iolxv2WHULT56QP?= =?us-ascii?Q?WRNBUnIwGw3o1ijArctkiRACvjVKckCxZ6RGvojqj5qqJ/42O6mOxD1dKymB?= =?us-ascii?Q?0nWuJmrTLzytEJyxQkSJsDSzY74Hh0g3q9E8ihRdiTIYU7GANy4cM9eVgXGl?= =?us-ascii?Q?i0dPm7bw800q2S3svZuRZvepqr2mdc9LXbtBwZ7lK3HknheMvM7MmjF9axf6?= =?us-ascii?Q?pjy2QIobykAVJJj9fBVW7oMynDUitvOd0R7o4ZWhxLXPNsmPDVHZNfcoLpFh?= =?us-ascii?Q?4uFCLgYvbRNldFAF1Oshcv5+Vdq9BRGhGBzbWMFlBB6JraM1GfQ4s1kgYkFf?= =?us-ascii?Q?B/P4EDlAvVC+pXAIJFbdLYmXlSXr+SMMRZCAxBWkkP/NzOuy4YFn8BvY2JNs?= =?us-ascii?Q?crfpcXxF9AD2dt3jyVcqGXkYsyhdMuut0qT9038ifW25FpWxvR8U5pRMnIkE?= =?us-ascii?Q?oTt5aBvB57qOukmLg6EF6CNLHi3LLA0fwsu1xcjB1ekeDvuq9zW+SSVBqGM7?= =?us-ascii?Q?1Nr6UEi0PeMeaj6H7MtN5UtMufWSaWO8cZ2FugiXMcgarGRxfzl1REHaACrn?= =?us-ascii?Q?9lP4aR5zjOvxZWm63CcfP/EWhxF0rRkVnErknUnRwTFEy9JgFofb7ancHD+L?= =?us-ascii?Q?GLrETKVHCqHfIE3cloCQXMkEUNgnXzyr5YRiuOyZI88IQnog/k+an0lbnw98?= =?us-ascii?Q?o/N1TnCWd5HY5J9eRr/3yc+73laKNR3Isqb65U4KkBV4HgLHGuSbT1+bnVmv?= =?us-ascii?Q?fzvhA8V5mwd8nGxtie2F2JI4VKQk0lO5kRQeTk8PKhsVlj6t3X8hf2/7XqpE?= =?us-ascii?Q?yyu982GJwAfndyp/VetW3v+A+9dllsoLQoDwmgSZ/VUsrj/GRTIRbh/50QKV?= =?us-ascii?Q?Jkyg12ZFd2KFygIRAEmE9i3sVmVS1XyWM0YMDKVtExoaLNKHkWA2POeD3Jap?= =?us-ascii?Q?QchcXSeWGfKWn91Av1T0ckS8IS7ftcFSORi0WW2nNDThJKTTJfPusgUwFCwi?= =?us-ascii?Q?gQTqar18on583TdfwjAdM2rXNPFWtBUe87E7yykaECYC2oeonAk9pRzn2ohK?= =?us-ascii?Q?qdB5ECsUkJfwejQBVGeP2SGL+Zl3NSOFWs6WeqeJtuDymnRgyOSDeOXVDJwi?= =?us-ascii?Q?G67yLfRN80M=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM4PR10MB8218.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(376014)(1800799024)(366016);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?LG2DZrYwWKmzaZH1vtJRAs0Nulnm4+nGYgFgAB8ARgRvEway37vJBHFsUZba?= =?us-ascii?Q?cnlKxYbickP3OX1i54DE6dGrPN6Fyomjyb+0ISr6bescP0QWjF56vj782h5l?= =?us-ascii?Q?DCRaTd77/yxcds4DnDxxynB06NgexfOo7blfZzrwsstjKRe5lj294lLAAAtq?= =?us-ascii?Q?8kMrJNiT8OF6W+P22ewRT5iSQtNTFNfYm4mU0iKgDJTDt2c0wb2Tn7aaYEUq?= =?us-ascii?Q?MFgvjwl8ExeNIbqhMzv1Fk6t8Y0DnoWCU188Pps9/hwD40Tafp5kfBRKPjh6?= =?us-ascii?Q?PITqAOwkHwPPHn3K4okOn3Lr2aqmWJ/Zv2AST8PqjZ6ZEYyOHzlsvPcFvPZH?= =?us-ascii?Q?jnIoNBAOVq/0qFyPP69siGBAS4nUbqN74qANh6qqN6ppqrMVPAsJDvfqXHx7?= =?us-ascii?Q?ESu1TrTMlHUxBp1Gtt5EI9VVgRsAQVE5edqa8HImhT2njLo7qW6ME44cm8EF?= =?us-ascii?Q?jhSHXHFKrys2p1POsZRopwy2+v57IUn5oaETGDby0lMgbla5kuhqN4qH8zld?= =?us-ascii?Q?hsdhfSFteovN1me5zcEFgon1iFPSFado5o7GTAE7iPIXlDPGmANfJC18GS9A?= =?us-ascii?Q?QoFBa7owPPY3aYGAa1T7Radi6YQOVvPrsPk1vPjQtkbG4tT0ODvFvImPWFCp?= =?us-ascii?Q?EubponWm429r2YmgYV1MVV11IzVTfhsYN22EfVhVzW/YCylxJbiQROY/YBAJ?= =?us-ascii?Q?eYrLaUgheuqBtRQhnwKHDmCSeL/6h85vljBv3rZLulhyX5Li73H9neM3N/x5?= =?us-ascii?Q?CClBtbvuDpGhA0M/6eLuQGugo4eUaThQvI6N1fR83Fv+qxITiKwyE/Szpvzf?= =?us-ascii?Q?3OkqpUqeSWqWIRZPAwCoUyzzFjPh4j2Q/EPR8SyjD+fJ0i86kiNP9PGpeBFE?= =?us-ascii?Q?j1i559rI8Cpk2Zmz6d2KTkYgSFfKU9l3sF9GgLytyuCEscb3omODlXic70iq?= =?us-ascii?Q?5zqWAqzUrKsisqG/K1FjaKLrmYbcaXW8uiF15PS9DjKdKkRPD6FGHsi0B2W6?= =?us-ascii?Q?9lpa1Cg0owus0dyb/tBwbHrH1ZKwUjPI2llggJ+8DlrA7M7GnV9ujBTCbxCS?= =?us-ascii?Q?m4AWAhd3dp49q+Bo5DE6O90+//3uTcRCpS9xgpuUR+9slcJIgh46X69Pqy+H?= =?us-ascii?Q?Ydf2xS6Jc9tzAU3VBYn6m1opX6VJEbfw5hA7tYXOuSyYL/HMDxP3WDM/BZq+?= =?us-ascii?Q?kBoplG9DQkCnJG9c36QLecLS+743HyQabatbYaz8bi3M722CxurRxlz6R+8d?= =?us-ascii?Q?0aFW1GgcHw1JUXVYp94KbfPixv9oMCGS0sSXyRH2I+Wv1pPLeUFi8eA6RN+L?= =?us-ascii?Q?pNiVmRP+Ch1K1tsAY2gUi4hGtVZakWL754EuVx7gtRXY35M8U6L8bEQtUwN0?= =?us-ascii?Q?VnKZogK001GA/Bn1RUCPz/4COUsVIy3u5dOd+bN+l9qrg0ed3MEFVulDomm8?= =?us-ascii?Q?Cm04J1ecRor98fChA4ZBPJnmy2jQCI7JYY2y3YxFm1897BxNsDfmV769V+DR?= =?us-ascii?Q?EnjzXACjB7C1QiBPnrqkqWtOyKv3icBqPIqNZ2RS0f7W09u2YjdlyTXWK3MM?= =?us-ascii?Q?fguO2zj+kpsu+KdUWoRAf1OLNMEVK8X3YhJzks1NdJV8HIt8OlwX+/hzEcLj?= =?us-ascii?Q?4A=3D=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: 1cm/+7yanq4yseokEhf8IEuMRpB/F8rP7FKoDe4P96agIprqOBnLtsjAKz8TH66VtX1u4URMzuEAZvyQ+gk6TnZ54F+4QB7ti69GnqDsXc4tsxs0b2lQszKY1WN7V6mLZ40sanPOTf3uA0zE5pHGFMpe7liZj7/hlc7uIzx7g+HyOsvKhJP6h4LpyGsjAfWmPz5OaJQpgtWfG6FAlBX8XiiWOnrfdrfik755THfISEqP29mK4ATeHFzzAvDRYEJMUbHisSxnYkBXf9zxZW1iBR9g/Uua6rGJ0JqfWk+6RDcZKSe0n82zB1b19lMAc5RQ3+K3DexMwAIgesfjx6BTo4+ns8vMZMg7zi1zBMKu4xp/6J9gGa65csLRG4NXvevZhX21PYjtgrw8Ecrr6sDl4/E36oeeG0Nr7jX3fsGTjZKPPmq+Xr6Y9U0wpkA6+nGMdxibsAMU6zgdFv2wb9dJKr/jnVAMI2tNjD5anzQSO5Yx761GD4qpKCkX0x5L3tBCMyl1fHIMoRiyDpMPQOQz7Uy5HGESMzV+JV7SftS9A7uhprqNwv3EkihgWVzf2K6qNXm9UA1F2siPLyS3PbU9cqq07yFlDBft9v7MsPgDAXo= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 953761d6-17e6-4081-628e-08ddc3a4cff3 X-MS-Exchange-CrossTenant-AuthSource: DM4PR10MB8218.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Jul 2025 13:37:58.7949 (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: T7g3buyZHW5Y/ESv8XoF2G2I0bAeKguix/TINpP85mDgZ1//67oCboGkLUH0PxW3EJLuu2WZceHWmmKzEFNUl2LSHf0YqIsoPSW9ChW8bps= X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR10MB6370 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1099,Hydra:6.1.9,FMLib:17.12.80.40 definitions=2025-07-15_03,2025-07-15_01,2025-03-28_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 malwarescore=0 mlxscore=0 mlxlogscore=803 adultscore=0 phishscore=0 bulkscore=0 suspectscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2505160000 definitions=main-2507150124 X-Proofpoint-ORIG-GUID: sPVmSGJ1AlZT4bg1oieUdG-cFDpJoDX7 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUwNzE1MDEyNCBTYWx0ZWRfX2xL2Yfjqa/Xs aiC9/ylmZJ2p8CDfRQB6xIbq2ueBSFqDgEqRL0vOfnHBRtya7QOU4tVgVqo3TjiOSSbwbX3JY0l PGbYONEPXdKgDmq7PYczAeIhBkqO5rRu/V52yX3hhU6EggIAy2FXEl96ROk33hrJoZ2plKHcxJ7 ommJiZqwDPu2IJ7oqPKfGubLMG1lJUL3PHvZwPGRH1QH4WeDXMDix2gZH4UyHPaeI/F87CnkzRh Z3JO1+TD/j6qhltGif3kne29Nd7MeO2aPdPMwMXJXztFsEjJ2/GxVkOWtraQJWokxLXrGOpE/hN qyt4ZKw11elBxJ6XB+Po6YQqH6924fJxA3dX7TpQoOgsnL9FbCDd65tV5ZarahSbVQMQJXjaiXY 23oBDyCfKduI+Au7lVKKHu1rm5LjJV0n5ptwg55Aj/fzjJY/HNglUvVz0IUdxwn8cWpeuXyk X-Authority-Analysis: v=2.4 cv=Xtr6OUF9 c=1 sm=1 tr=0 ts=687659ba b=1 cx=c_pps a=qoll8+KPOyaMroiJ2sR5sw==:117 a=qoll8+KPOyaMroiJ2sR5sw==:17 a=6eWqkTHjU83fiwn7nKZWdM+Sl24=:19 a=lCpzRmAYbLLaTzLvsPZ7Mbvzbb8=:19 a=wKuvFiaSGQ0qltdbU6+NXLB8nM8=:19 a=Ol13hO9ccFRV9qXi2t6ftBPywas=:19 a=xqWC_Br6kY4A:10 a=Wb1JkmetP80A:10 a=GoEa3M9JfhUA:10 a=yPCof4ZbAAAA:8 a=bYyZlYpX74AIGI5vcOsA:9 cc=ntf awl=host:12062 X-Proofpoint-GUID: sPVmSGJ1AlZT4bg1oieUdG-cFDpJoDX7 X-Rspam-User: X-Rspamd-Server: rspam02 X-Rspamd-Queue-Id: C9E2D40005 X-Stat-Signature: 1ctz7oupwgbchf1kja1qh5tnam48oxuh X-HE-Tag: 1752586685-214948 X-HE-Meta: U2FsdGVkX1/3qmcV1BrwidIwJPg3ZUmtA1TpH1JyrFwccRZGqBcbHGzH32na3O7mjgV9MFPVXSZkd4JemIJskHlEd+iAYlksJ/6mIyh+ORaMTagcTDy/q3AaulmVr5TYJ1WGp9hhBAil77igG9v2Yi6pRKDJ+K2Qaze8iqwGAc1jHx+T2NafM+TvCs7U7HyE2X8Z6xCrv14iSFNhNEkg9as9cph5B1pTwLEnuLYdOZMwB8nI62AgMB5EXsvo2xfEn9t1rVSIMYEFwR65kIHdvzBLPzdBrmdHJvlNbR5OBsJLhEFzA25HVm1A5+JFQae0LvA7/qMNBHVTJ74rwmKdldQYX1RohMUWZ6GTgZMAa1FctHrszVqI/bhb8uKnxJyUT77jO6Neg0fyOnN5ufws6kFX6B9JzrYuOa5LnCry3gsAOpc3y8t+thSdXNTNKYdOY+67ndWoEsmsC35qX8I3AJfqvRPov/cRPMkyq5mz2mJTZxMAe1iUpjmom6b3Yla/oB5SRfHiEZZIe5oprfWoOHhLJ5myaMRCsHVrlsoUgeX+8CFe/jfXjY0WdHt0V0pvLuMyQ66AYE+0acXGMeFEvNvk32Q2A4+eUn49h/NO8L7QJUbVFjRdAFXCD8sIBSTDDHkCNAgUqrceXja711QeYXJ7O2h+Esc9t85yragKuRmVqiTJ0O1tVidsiOri130UUGQRUrvbAsl45OJsFQICZfs8lbHfeFKoqLJ9DvhFnpzJN4dS+bhScXJE4AXSAGqiYEJvoirugO8z0novAfXVxsUp23zWgzv1nLREAovZ6hbA4XxoVuqfwq/puuxrtIarw8WwzSWbdY1x3st0CAlP4/eDUIcIoA9ykEhFQkHXwSSyDtk8Yoa1IXTp9kKUL+zfe/bsA804fDKGTgyOR7zGM/kPja3P2VvsbWeDVVtvSwRX/ncX1OTf0gmeXK0ZCLzfWBsxnqLcBi1V283R5Wk jEks/8Bl fd0Q+npy+gq2DNzSeu8E/OcsstZV7kJTXF5/jBZY2AcGJohSrWVjZDAavQIU1dgjtvJ3W6Y4yizw2XLl1Ldsmr2x//hYE7NqE5Cj/j+JCtM9EOraoKEFLppZcj1HMzXh22Y2eYfQFXzn4rtQG2oJVnWTvHfyFiIVY9+Er245olcNGjUiXx3W8pkVg1za/d/W91V5Oq4WTt35v7Ny00iE8yYmdC1YSSNQe+txa//3kt+LusirpqMqSxCUGMO7UJM6w+P//JGdOnnNSoBS8wysffAjF6a6z9XL/XzR1KqmMj1mc3YaLe5M8BsRIAKe6jT3vPRaO6Nq1GodRQoX51cRHzjk9iAmQQZQTd4z1QsTobGRyY/b4iZyxBZ6Ap/XKv8RH1Xg90PnTIyLGTnT/m/T/5sL9lS5y9icK+r9OqbWC6j+dEmtqwgz9pnPUt/5cgHs0h0likCAeNpekI+ubCz4/r4Co6wai5gaGW7JHV0RRbCXWPg+7IbLzzEkBYLths4svLiio3QW6X6t6fNp2w6/6diG9tj/3kKPnXTAxE4/4lbx7B8fh6xdqB/o6WzLrdG4yG28auk3UZHL65gejuTEbP0X0A/NMFlxWXp3GH9I62+9IqQYl65SDVNdDJ7jE7ALzCF2jH00io3VRlOABqwiFaEf4iJRFgFlCouzWsZjNDJ4jq5hIYvoSHga3o/621KlextHaZPHofyDHWoAK0mLs2HpxG20bG4f9egH9 X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: The logic can be simplified - firstly by renaming the inconsistently named apply_mm_seal() to mseal_apply(). We then wrap mseal_fixup() into the main loop as the logic is simple enough to not require it, equally it isn't a hugely pleasant pattern in mprotect() etc. so it's not something we want to perpetuate. We remove some redundant comments, and then avoid the entirely unnecessary and slightly bizarre invocation of vma_iter_end() on each loop - really what we want, given we have asserted there are no gaps in the range - is to handle start, end being offset into a VMAs. This is easily handled with MIN()/MAX(). There's no need to have an 'out' label block since on vma_modify_flags() error we abort anyway. And by refactoring like this we avoid the rather horrid 'pass pointer to prev around' pattern used in mprotect() et al. No functional change intended. Signed-off-by: Lorenzo Stoakes Reviewed-by: Pedro Falcato --- mm/mseal.c | 69 +++++++++++++++++------------------------------------- 1 file changed, 22 insertions(+), 47 deletions(-) diff --git a/mm/mseal.c b/mm/mseal.c index 794d1043a706..e0fe37623632 100644 --- a/mm/mseal.c +++ b/mm/mseal.c @@ -15,60 +15,35 @@ #include #include "internal.h" -static int mseal_fixup(struct vma_iterator *vmi, struct vm_area_struct *vma, - struct vm_area_struct **prev, unsigned long start, - unsigned long end, vm_flags_t newflags) -{ - int ret = 0; - vm_flags_t oldflags = vma->vm_flags; - - if (newflags == oldflags) - goto out; - - vma = vma_modify_flags(vmi, *prev, vma, start, end, newflags); - if (IS_ERR(vma)) { - ret = PTR_ERR(vma); - goto out; - } - - vm_flags_set(vma, VM_SEALED); -out: - *prev = vma; - return ret; -} - -/* - * Apply sealing. - */ -static int apply_mm_seal(unsigned long start, unsigned long end) +static int mseal_apply(struct mm_struct *mm, + unsigned long start, unsigned long end) { - unsigned long nstart; struct vm_area_struct *vma, *prev; - VMA_ITERATOR(vmi, current->mm, start); + VMA_ITERATOR(vmi, mm, start); + /* We know there are no gaps so this will be non-NULL. */ vma = vma_iter_load(&vmi); - /* - * Note: check_mm_seal should already checked ENOMEM case. - * so vma should not be null, same for the other ENOMEM cases. - */ prev = vma_prev(&vmi); if (start > vma->vm_start) prev = vma; - nstart = start; for_each_vma_range(vmi, vma, end) { - int error; - unsigned long tmp; - vm_flags_t newflags; - - newflags = vma->vm_flags | VM_SEALED; - tmp = vma->vm_end; - if (tmp > end) - tmp = end; - error = mseal_fixup(&vmi, vma, &prev, nstart, tmp, newflags); - if (error) - return error; - nstart = vma_iter_end(&vmi); + unsigned long curr_start, curr_end; + + if (vma->vm_flags & VM_SEALED) { + prev = vma; + continue; + } + curr_start = MAX(start, vma->vm_start); + curr_end = MIN(vma->vm_end, end); + + vma = vma_modify_flags(&vmi, prev, vma, curr_start, curr_end, + vma->vm_flags | VM_SEALED); + if (IS_ERR(vma)) + return PTR_ERR(vma); + vm_flags_set(vma, VM_SEALED); + + prev = vma; } return 0; @@ -185,10 +160,10 @@ int do_mseal(unsigned long start, size_t len_in, unsigned long flags) * reaching the max supported VMAs, however, those cases shall * be rare. */ - ret = apply_mm_seal(start, end); + ret = mseal_apply(mm, start, end); out: - mmap_write_unlock(current->mm); + mmap_write_unlock(mm); return ret; } -- 2.50.1