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 2FDC4C83F21 for ; Tue, 15 Jul 2025 13:38:12 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 1B55F6B00C4; Tue, 15 Jul 2025 09:38:08 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 13DF86B00C5; Tue, 15 Jul 2025 09:38:08 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id EF9836B00C6; Tue, 15 Jul 2025 09:38:07 -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 D06F46B00C4 for ; Tue, 15 Jul 2025 09:38:07 -0400 (EDT) Received: from smtpin30.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id 9573616040A for ; Tue, 15 Jul 2025 13:38:07 +0000 (UTC) X-FDA: 83666602614.30.F961C00 Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) by imf30.hostedemail.com (Postfix) with ESMTP id 471FF80006 for ; Tue, 15 Jul 2025 13:38:04 +0000 (UTC) Authentication-Results: imf30.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2025-04-25 header.b=FvjEJC3h; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b=g1+1ME3J; dmarc=pass (policy=reject) header.from=oracle.com; arc=pass ("microsoft.com:s=arcselector10001:i=1"); spf=pass (imf30.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=1752586684; a=rsa-sha256; cv=pass; b=ZhJOnSoatBx1aG5HEH0CgsBglcKqCRvAiLcpikUGli8KYtv/u5Ou5JWY4aPjvvdqw5rVxI +u05psHwF4BCxHdqwpisdc2IW4lvDPUDPmo+yiOh+aNWp/7eSSDWDVrcnTzjn42RlKFxQI 8RoBVjfreX5FcfdYdxp3Ur06mruM/r0= ARC-Authentication-Results: i=2; imf30.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2025-04-25 header.b=FvjEJC3h; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b=g1+1ME3J; dmarc=pass (policy=reject) header.from=oracle.com; arc=pass ("microsoft.com:s=arcselector10001:i=1"); spf=pass (imf30.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=1752586684; 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=dJsLJ6ikCycbkWoBBk1u0Fj2sLfpNGZ0KppuFQOXo9Q=; b=nCd6JCRpYX11ppSmpE1WTPNov6lyYpvkVZXQViGyJPVGWMSfC8yEqSx0ufHj5o2iO1/Ctc PGKlh5urkjcj0ufDGVPbrXPG6m76k0kTPb+5tGuTsPoQmFcskGfAk7h3aEpxPLgYhqgJs2 5vF7rcW6yMFhaFsEgKjCDuejjcAxiMg= 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 56FDZDJs009117; Tue, 15 Jul 2025 13:38:01 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=dJsLJ6ikCycbkWoBBk1u0Fj2sLfpNGZ0KppuFQOXo9Q=; b= FvjEJC3h87jqAup247Wl/X6BRHcr7EdvcE4P/8bkTxchFvWwSSVFX7JbQamC9XDk mnhn7PBCmOcrg8VwRawWbNTvIyoRW4jHLne24vPXPxDrMjhhRZRF5c5l7ayNwIjz mQX/zTaUYIPWYOVwaT2jp8VYAagvWhoEgrZflG9oTJcZZT4qSwCSCveQGL7jjO/J MZ29oGhly4dP5xRNZ7eJZUV6CFxn4/j71FORcHShck8zyOL8V7AD1GSzCA0N+Vzj 6N1hL6fog5rpgBOXRBIwxftaJTYR7n0t4UOxScSsvlUEago8sfxurkG6pfhHRj86 fEDUEk+SD+YAl+tkBj41Ng== Received: from iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta02.appoci.oracle.com [147.154.18.20]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 47ujy4pkwp-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 15 Jul 2025 13:38:00 +0000 (GMT) Received: from pps.filterd (iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (8.18.1.2/8.18.1.2) with ESMTP id 56FD82ZJ039715; Tue, 15 Jul 2025 13:37:59 GMT Received: from nam04-dm6-obe.outbound.protection.outlook.com (mail-dm6nam04on2040.outbound.protection.outlook.com [40.107.102.40]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 47ue5a0cn6-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 15 Jul 2025 13:37:59 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=QPwgYN0aHpUSlodMIPPqyj+Xrw2YaCKy8AzALv6rJ2rE7za6ccSFnfakR8ijjPpqsF1jGIq+O8RWytgfbqRFg+16gVF0JlTFW5jPEckgnJfhZjhL/oE/1f1g6ogRV83vXY0aAi4W+xlk98jhG2GvuHR8D3u4PMi/dKYItj9spQOsKA+ExrRXi/XflNZ/KNSqFfrVXKkmv9gowszqg+XI98grAHEVnC32+GRewEWekxSwlexd67M6T5miMMgNiLAvBqn+lezGxXc+h2XBEEI7HpMVpyU7uu4UjAe8GjjjB6BGHSAO/B2PUDESyzjRXvD/MWL1Z1/dtAtC9fvX4ex1dg== 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=dJsLJ6ikCycbkWoBBk1u0Fj2sLfpNGZ0KppuFQOXo9Q=; b=eEF7CuwQ/icRbI20eaWECrCjjnFA9FHacEiNa5dXf06JZGj45pUs+mjlo3ihrKdnTOCqmKGcevRpFTjvesF0t8rbjY0g3ygva1dAWWUJYQ22iktShthcsntAhdvL+AzSdUrbRKgvVjGSRBIEjkNIoq/l0fHl3+kJ25nNn9gi38NWmErMuaShFWvtvE0f1jAUUxSJaXxz7b1ZvZiS7FP4bdGAADl82u4hXB1yODRfX/7VKinxFSwpFZSWVgfI7+x8O7Rot3CC9VG297SbJph4AurCh2EIrLyIyRiesxzxe0zakue09y5wrYVXpFuynsMdDmZGbthym4ru97bbd4cYHQ== 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=dJsLJ6ikCycbkWoBBk1u0Fj2sLfpNGZ0KppuFQOXo9Q=; b=g1+1ME3J6MSxnV/Y9XHRRVJ7DHPNXzFvp2mHr5EX/6vwDAVvWbemJUOUaQFPELH82Cb5R1ApfG+9aH1fOVR5eF69UK3GPSCV4BV+DpUO/QQD27XmKhsucWkgvlCrobYf5szM/Dn1J4Fe+wtxPAAQJi04UCmvDACrMI+N3yBqmvA= Received: from DM4PR10MB8218.namprd10.prod.outlook.com (2603:10b6:8:1cc::16) by DS4PPF0316BCB78.namprd10.prod.outlook.com (2603:10b6:f:fc00::d04) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8922.25; Tue, 15 Jul 2025 13:37:56 +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:56 +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 4/5] mm/mseal: Simplify and rename VMA gap check Date: Tue, 15 Jul 2025 14:37:41 +0100 Message-ID: <8efef79c46553a9b8924878c1f4363998c1f49ed.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: LO2P265CA0410.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:a0::14) To DM4PR10MB8218.namprd10.prod.outlook.com (2603:10b6:8:1cc::16) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DM4PR10MB8218:EE_|DS4PPF0316BCB78:EE_ X-MS-Office365-Filtering-Correlation-Id: 7c1ffded-b953-42a9-8c47-08ddc3a4ceb2 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?KDr+S0LI6zjkxQYTcfiYkSY/FbsJdlzztzL9wf33D9/h/MGBNZqmcv0So/ce?= =?us-ascii?Q?LA+8LCUr64BjyNzxNrjMUPDgnBfjFWLQa9ea8TM2R5yFRLE9rh7VJ3Hxf19T?= =?us-ascii?Q?ITIB7kAzWFPVjbBAmbIboIcqHxfF0zNNN+pYG59Q+8OIPemmsxwHbuob0H+Y?= =?us-ascii?Q?+OKgcrtkvadJ2HA0Ukv4mykC+vsFUg/rVPLKe5xeS7aaGHEDzLPf4sqBY0nu?= =?us-ascii?Q?uoW1pspfW/8mQiQ60mbMSVM0xAgiwqzVsRo0k3HwAv4Pfs4zOXaIx1VbbcQu?= =?us-ascii?Q?uJjGQAF18U45IQjNFwKjn4i8oDn5V5zW6ONEKtcdcE+fgWvbmy3ybfqdnCti?= =?us-ascii?Q?rLwosoV/meU6kEc9j/Q4auzbG1z6MCgoatwC2kMkplkRgnfuQwkbLWkW0VqY?= =?us-ascii?Q?/HgGZ4GC39F0nd7+pcRw14ykuhfi3FlCgzNL1z3exR5whQNWDl5kYAGGBW8t?= =?us-ascii?Q?Ee/sm1o9l/GJLnq/9kktK5PUxE7lSfCjS7w3Kq6jiAq3h36kyj1neh2WAPyv?= =?us-ascii?Q?T+LPwmY2h0KH4mzBI/HBYwT0T2XKRSqEAHUPlwwhPZL5qGN5sHNWu+bA+nCE?= =?us-ascii?Q?8hrXv+Bjc8sKdSkeEAxH53sNKIYcnIEo1lRt6B0Z5T5uZrkKzJK/8AMn1O73?= =?us-ascii?Q?n0TWHUqtz9azgXjIPd/evmmFmrc3dm7EE/b2ouE5h99jSFCaLrnE/WlkKxKt?= =?us-ascii?Q?8o8y1E41bs1SD2PfT4LjnU2uPQgQb0xE6J4Znrhp1SKLr/kEpqKkuBftSdd5?= =?us-ascii?Q?BtS1K99F7IiMmA+6osKZ7vkesCAwrV88s6zLChdRG7c6kWASCc4Yef5rA7DQ?= =?us-ascii?Q?yfgTpBBjK1ahrY56KG7Jn//EVlv9y98Gpd5iG/y7aXr/lry/Z4UgPtq8Ap+Z?= =?us-ascii?Q?2HpNW3uylCDOb4zvAeUjzINRo2RQmcnmQ1zQZgT/4ovy3MH3Du50bcSqqJL2?= =?us-ascii?Q?uPFFXgtfmjRFR2/B3B+vGVJTmc5xJPe3IshmP+eTiwB7AxeIqrrCMHe8vZnr?= =?us-ascii?Q?INgGL/6RyfizkPb9mp8VWfvECsInAbshHZwf/ffRvPAnxb+ZKa5cSvxzeCSQ?= =?us-ascii?Q?vylrdw+JtDACvqChihrfwbI5a9Pkj2xxX8qbWbYfxeLfBrJMp1wpeXpKRbnd?= =?us-ascii?Q?atxmq7G1AQXiauEnPG4tjRYji4zqr4od/f/3gN0gIe9hO/YJPR0Y8VFmjBLe?= =?us-ascii?Q?vF003rnwO8ARf6fRmaWUcwauEfMKV2Pcxm2ac1C8uXjjAch8ldHF/LvcAbYv?= =?us-ascii?Q?gWc5IN2tgbF2H39oT6w/R/sj0z2TLDXHW7tGNFmDf0m5xOXuGK/RchbciFOy?= =?us-ascii?Q?JKA7BbazDsE1Kp+RanxQaec3+0MFdysZN9XeGKTD+x2M7PnqWAZDoPFsGkKo?= =?us-ascii?Q?NMTGgzcG7GDENMVU4NTYS5/LdLpjTJrfT7yRvNg49ofEnvDZTC0oCHt4dX6M?= =?us-ascii?Q?FaFKK5wdm+U=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)(366016)(1800799024);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?I7tB2rzpn3YzV7T2pk6NM7+7y5ZXAUJgbBswYj4OtnYWnFiZP9treLXPRlva?= =?us-ascii?Q?6QtBLu24YI/Hm0WqTt/8v00zFH+L5jycoL3Hjv1nNnpzzIhC3KDgwfDaEoue?= =?us-ascii?Q?uyeKbk8iY5nfS83L009a1Ddvw01hglW2JkhOUU/tbkXEq9UqqbOyUwvmgAmV?= =?us-ascii?Q?tdxrf/F5NOlGvmnmchSZF8XRim8C66OsAYAjKyHGQ6rPuXjlL9xKlO0e7fpt?= =?us-ascii?Q?avuxOqzu0nNzzYRu7LKhLI6Xb1duoCj4TpFDK8y2fevErAgb6w3OHu0jwjPc?= =?us-ascii?Q?RWluwnvcZv0YHofhdjVEjKuVJ8P+gT8Y7SZDY4LHzU+H+/OVg1azo5qDC+yW?= =?us-ascii?Q?qT0wcmg/1HSfNzDCU32Cl12WeLDOE94rIluYXyDvmkH491brN8jZ/8ODReCY?= =?us-ascii?Q?B7xXbBvG1KgxzMStNmb/1TlCai+wbD8RO8TJLIOjDmJi0Apteiouk86y+1jH?= =?us-ascii?Q?+rF1FFrKp+mo0Q9Fg70GL/dbV3Aco8sjGJSclNI0+s/KixezAd6NZmfZ+Dpm?= =?us-ascii?Q?kArGvdPuoT8Dwpc2hGcOJljJASBNt4UeSuCfk1PpzbuNoPSLXpS04FARllPc?= =?us-ascii?Q?WbtSJZVivQvO+xeL+ZmvnFBeCqS3hXvEcfmmvLM+091uRdL5wTFJsGFroXI6?= =?us-ascii?Q?B/ehD7Ms4QmAKYrKpVM2JMCPgqd7rpKu18U+VkENbwCveI03WarAHHrtefhj?= =?us-ascii?Q?XRa9wF0aKpTTcDUUOIz27wtMSqzOuH7sc8jv1HEAI2T/iUXpV37Gne18zVWC?= =?us-ascii?Q?+Rtcjnnd4ecxg0DbBZXEGOColmbNifstUpJx5iilpZKO5tStyBxdPRvvUv3R?= =?us-ascii?Q?nqy7K67LyvylZrsDxsYHP0sXddSzgiwCrTy0ckm1Aiu7Yc1iTkoC7Ubtn8YK?= =?us-ascii?Q?eT4eeltAW7dYLQB0dqr3A696KrqpAJJdNmaGmq8khsjOdTbL7A1pknT2UuTc?= =?us-ascii?Q?0s1BVshxDjQnF7CBlt2q7U165nUB6JElhE/VnzwWF5T9AqsZlPu4hiLMDTHc?= =?us-ascii?Q?+XHoNKqTPLZR7pvIgZ3ULfnKAJd6SpeEgJ13WGOgkQ6ZmvBqcWK9pTsxmAYR?= =?us-ascii?Q?72dtKzucxSgIwGixTuWufTU6X7So3tuWhDHKJGC8HEl8pFWt/APDGXBlZDi1?= =?us-ascii?Q?ulpdrgLcv2cD79SJhAQ4Qg85ph8rfRCMwONn8H/4nAx91ws+102NY9vVJ8zX?= =?us-ascii?Q?mDdhFN/tXRklpXNAqOEmPt3HzJKlPo167cMv7udv9oTVXrOHlpRF7f1P4udN?= =?us-ascii?Q?Plz40TTefnUszRfCFcSl65qp6YT2SsXQnDz357D/YvOFjet4VeBzPVr8Sekm?= =?us-ascii?Q?TcYtCnOtlA9eXBJg0Ry0GFZZ2u6hpQJ6cAx4GI6fmOAXccp5gI5k0bTWJYoc?= =?us-ascii?Q?bjVsQiA/51Zl1GD79x2T16y0RlfTiGgmN0hi0xdcYa00v30R2ouoM+/fRwJs?= =?us-ascii?Q?WfTtoKb74xlP0oSmvoMOgFWYdVD2fwQDbk6OTPpXFMSxZRYUSjz3WoTHlTnt?= =?us-ascii?Q?/QAFIunAKMMQNHcjoIwZa8Mfzz6RBiCZjNkhOdRoQL9PZ+L+rI16ZM84UXcG?= =?us-ascii?Q?XstTW4ZZvhGOdAoZaUclPtfscbukH+Qncky2tTL4FCmXf774jUTb5rP9lL/Z?= =?us-ascii?Q?nw=3D=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: V/ScpiTP1DTricqWGBaowFAhSapjjl2ir+LyW78xePPbCeLCb9rXC9FQOWEDVjX8GriLBXWkKhnh3w9cVAvehJC6Zn7lG5TsVu/ti0YjBM76jzMn5V+JSd8NeuRq+56qXns88jbXDNzIF+Zt47taiLa9QzV2xswQOpby8UZrRsYcE/IiTlkd8VonBHUMbYf2Non4JrEiUScD76pUcpWpt4Z1vbMtl8BbRwrIs5oSiRUBRCQcQKLJc4BWaNMbpxKe0jpQFZ1f3yfoopjQkcU1PZjn0Chi5NCB+txHZ7cMzK4FziNhQpsVkS908+rclCMJgQ2qHqvz32keEYvnc5cG7esjAOpW5qR1MLGWa6QCD8UE5PvVYRx6fS8bMxuYqJ2dl1uOiJU6uCena4XZ7+rAedaZYkZl55V5b489isKZMKYtOLVW9EKx32/4cNAbttgKcbF/eWCSRra4eADAmh05Z4+xkKmgMrpgfYlAEte5odQx48mNX81+2j7X1rurbO9NxPS5AMpgHb22KeH6ESxci9UchGMtT6ltatTswMOOSqwMhvrnvKOeMejkL+BU8yUlpjmvoKYGUG6i7h+oWB2e7V6HzCQWCpBa5+R+RvHc+WE= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 7c1ffded-b953-42a9-8c47-08ddc3a4ceb2 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:56.7089 (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: d3P7+RKkGrhoRh7UFKFIJnsto3q2JPh2pLMgqQLs5iNGvccoLZ1yiRQqUDRwIu/8E8CTKp8IaklG6soV+SOEbTXHZ/R45bz1bYssnVzln4g= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS4PPF0316BCB78 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 bulkscore=0 mlxscore=0 adultscore=0 spamscore=0 suspectscore=0 phishscore=0 mlxlogscore=999 malwarescore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2505160000 definitions=main-2507150124 X-Proofpoint-ORIG-GUID: J6sJQaVO4_9Rq4szTI5f9PI69XaUDqe7 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUwNzE1MDEyNCBTYWx0ZWRfX4UwhoE+xfZNC uXiXKPjGmlWeRRJyxI8ULbDwPPoszkSRdrKtK7+NNKScVTMcff7pVVii8cmYFVVgQjYGhJNKfJ4 lk+Iwj4+X0pc57u7BIaM2L6SnmOFImG0gEX2H7aHgi/DJn1LhJ5nhIA1XKhNURIt289h5tZpn/Z PWBoYeBHaX1wxI4N9KBeLFpo4f/iSD78UGgZQVyOoBfqMw+g5+Z9I5Xya8Z2/AaT06VkpA5SWFK b2uSlTon1esoDBrvzJYko1BK+gy/gMHqhecVlzdpy5sIxsvSNkGfJNcI73XY5dkESyWxKNJdWZC irQF4lS3Sk0XWmaNOiVH6IBTsybHpQxw/5FbaOijalsIaFmhw5x923H6Es4zK3F/0qPbN/scdRA pmyLBeQvDCCYk1yUS/+PV/IjiT8ITbZVTXqf8TGr9YzvQ2uIbDnQxx3YuT9HNQ1IRnbteydZ X-Authority-Analysis: v=2.4 cv=Xtr6OUF9 c=1 sm=1 tr=0 ts=687659b8 b=1 cx=c_pps a=e1sVV491RgrpLwSTMOnk8w==:117 a=e1sVV491RgrpLwSTMOnk8w==: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=20KFwNOVAAAA:8 a=qMmrSB22KtVtcMM35qUA:9 cc=ntf awl=host:13600 X-Proofpoint-GUID: J6sJQaVO4_9Rq4szTI5f9PI69XaUDqe7 X-Rspamd-Queue-Id: 471FF80006 X-Stat-Signature: t1tw6rqg5wwdstciyb675ysaoyw95ia5 X-Rspam-User: X-Rspamd-Server: rspam08 X-HE-Tag: 1752586684-874132 X-HE-Meta: U2FsdGVkX1/Ot2ViKSJY+LBnrNYOhXjppOw8MrZkcJhY0BcGQhexRmq1+H/QlrCrXNF2JqIth77RW0G9ivuGRz6OxagWlFBOJ4o/N7SioqtBWqY9xqpUy+9nE8m/gfU/Big4kEteC+LwSc6dEvO0uYUAcvUPnGZx/GpnklEAIKHQVlcILVpIaAMp4g8D7Lz+leVuJyBrcVZwQMOeB7Zw5bfLdqE5y6hBw1vYVur0p7zn5dWtR6tYMKlpJXZ9aW7Rn0ADSkcOXF0c9gxKaQHllwiy+HjzCpL/QmI/aCdMcK3qEimHX7YV1zr29dwXJZTN0dUblRfgxsv9d0CJKdObHPvCsspwefCkFaalBi+GivTcRl6LYNuxkFc3voDPVGqNELYZ/UGZiY059OWcWQ8iNOFlv4SmitQTI2RIleE8lSRVjWMr/A9/3HYTBn/5sa8/dFJYonPQAxCaJQk2mXGsOzpN4bOeTkunMXvJt2D2Pru3eajQvLKf6MqEZOYOkvCqkcrQneNUsWZkm/XAwGmLarm+z5cmgo70RiQotUMr2ugK6RpEQ0Rgdn+S9nNJATPUylvbPAor2mAjxjBPRUYTXTjITJsVPNv5J8tY1epwOHWa/OtKla5EVfJNLOBXsJyNPAqJ3TaZtiZuphAhtmMQUDo3JVUHhwJS8qQOxOrzS9HaQkMaQtYg2LxIy3GUsRyPLnpqjFUGnN9ehxvuq1FyYynLZf1ERD2AzG4IuciwTluY12PtHEEcfMFPCsEdFqkbRD2eU400prcJl5V7CIGmoue9OwEc0elwks6NvoKkv6xYw95qKsyE7ufi8I9jw95feE8TqOjtn9uWHu9611i7864MyeHbVSDDkFL27dj00x2arfELfhl/7GEHbeg2oL92OOBu7fKOE3jztLNLGP9lvPyuFXyP2eYIP/rzx/NcrMiFPHI5a+zBM2/qXDNmT3t+rWELTmbJu0ssZx5wyz/ //GRapQn PWjuGUXJwrTiIiZX6sLrGP6U0YX5wwJM9nrRam7ltuWA1VBVBU4je82pU3nFV/L5clfoSn2PgRc+0FeruUzJmKxzaAGygtsHlQr4MTfubzypJc7WSVQQUoraquQ== 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 check_mm_seal() function is doing something general - checking whether a range contains only VMAs (or rather that it does NOT contain any unmapped regions). So rename this function to range_contains_unmapped(). Additionally simplify the logic, we are simply checking whether the last vma->vm_end has either a VMA starting after it or ends before the end parameter. This check is rather dubious, so it is sensible to keep it local to mm/mseal.c as at a later stage it may be removed, and we don't want any other mm code to perform such a check. No functional change intended. Signed-off-by: Lorenzo Stoakes Reviewed-by: Liam R. Howlett Acked-by: David Hildenbrand --- mm/mseal.c | 56 ++++++++++++++++++++---------------------------------- 1 file changed, 21 insertions(+), 35 deletions(-) diff --git a/mm/mseal.c b/mm/mseal.c index adbcc65e9660..794d1043a706 100644 --- a/mm/mseal.c +++ b/mm/mseal.c @@ -37,34 +37,6 @@ static int mseal_fixup(struct vma_iterator *vmi, struct vm_area_struct *vma, return ret; } -/* - * Check for do_mseal: - * 1> start is part of a valid vma. - * 2> end is part of a valid vma. - * 3> No gap (unallocated address) between start and end. - * 4> map is sealable. - */ -static int check_mm_seal(unsigned long start, unsigned long end) -{ - struct vm_area_struct *vma; - unsigned long nstart = start; - VMA_ITERATOR(vmi, current->mm, start); - - /* going through each vma to check. */ - for_each_vma_range(vmi, vma, end) { - if (vma->vm_start > nstart) - /* unallocated memory found. */ - return -ENOMEM; - - if (vma->vm_end >= end) - return 0; - - nstart = vma->vm_end; - } - - return -ENOMEM; -} - /* * Apply sealing. */ @@ -102,6 +74,24 @@ static int apply_mm_seal(unsigned long start, unsigned long end) return 0; } +/* Does the [start, end) range contain any unmapped memory? */ +static bool range_contains_unmapped(struct mm_struct *mm, + unsigned long start, unsigned long end) +{ + struct vm_area_struct *vma; + unsigned long prev_end = start; + VMA_ITERATOR(vmi, current->mm, start); + + for_each_vma_range(vmi, vma, end) { + if (vma->vm_start > prev_end) + return true; + + prev_end = vma->vm_end; + } + + return prev_end < end; +} + /* * mseal(2) seals the VM's meta data from * selected syscalls. @@ -184,14 +174,10 @@ int do_mseal(unsigned long start, size_t len_in, unsigned long flags) if (mmap_write_lock_killable(mm)) return -EINTR; - /* - * First pass, this helps to avoid - * partial sealing in case of error in input address range, - * e.g. ENOMEM error. - */ - ret = check_mm_seal(start, end); - if (ret) + if (range_contains_unmapped(mm, start, end)) { + ret = -ENOMEM; goto out; + } /* * Second pass, this should success, unless there are errors -- 2.50.1