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]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id B3E02CCF9E3 for ; Mon, 10 Nov 2025 17:36:09 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 8FFAB8E0038; Mon, 10 Nov 2025 12:35:08 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 8D7018E0003; Mon, 10 Nov 2025 12:35:08 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 777DC8E0038; Mon, 10 Nov 2025 12:35:08 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0016.hostedemail.com [216.40.44.16]) by kanga.kvack.org (Postfix) with ESMTP id 63FCD8E0003 for ; Mon, 10 Nov 2025 12:35:08 -0500 (EST) Received: from smtpin14.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id 04AC9140216 for ; Mon, 10 Nov 2025 17:35:07 +0000 (UTC) X-FDA: 84095398296.14.5D9505F Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) by imf06.hostedemail.com (Postfix) with ESMTP id 64D6A18001B for ; Mon, 10 Nov 2025 17:35:04 +0000 (UTC) Authentication-Results: imf06.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2025-04-25 header.b=cf8gprpE; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b=lVye0yZv; dmarc=pass (policy=reject) header.from=oracle.com; arc=pass ("microsoft.com:s=arcselector10001:i=1"); spf=pass (imf06.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=1762796104; a=rsa-sha256; cv=pass; b=msXhH/V7Q3o1OIsDiAbiWUHh2jjCBMbcalgbhmIXSu4NL9Zjs/otrtNAIbxRwh/FGt83DV 0SZYGZ4ojZksIO6jsKzCV/zMU8JdhML2DOlGWwJKgSMsNUTJ4/tRVO6NKxFSJLlaKIfpt5 NFaypkHaaVtrOa0E0eqn2PNikkl3myI= ARC-Authentication-Results: i=2; imf06.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2025-04-25 header.b=cf8gprpE; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b=lVye0yZv; dmarc=pass (policy=reject) header.from=oracle.com; arc=pass ("microsoft.com:s=arcselector10001:i=1"); spf=pass (imf06.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=1762796104; 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=JrtdXx6/1wno+2gkrkRU4ta3j83QhbodkWj/iyI36fM=; b=FGZAxD3ijp9rOm3uUecMZteyc3a4nsxuWfPP+v9DV+KUUxcJizZy3jmPo+cNc+TBhzLK1r EvBYqDXK8u6LVNTmb3Crv+TkhPqNODia0MWfuNQGj2i4fPKc7l/qCVtVAgsouqS9b67mAU 5MZej1m5AY+tKOP0ymWrzhWqTkXbktM= 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 5AAHKQq7032420; Mon, 10 Nov 2025 17:34:54 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=cc :content-type:date:from:in-reply-to:message-id:mime-version :references:subject:to; s=corp-2025-04-25; bh=JrtdXx6/1wno+2gkrk RU4ta3j83QhbodkWj/iyI36fM=; b=cf8gprpE4Em1Bc2nVpI4tGA2YgUiNVLVDD Bo9K+t0LpcBPb94M7vnfrV9eH7ruXPGeQIijvKE49b43dFxqjjzDDXYog1lA0pZq vLG8YYsKnFXYYaiXWep4X/e54VYXZ8evB+yLkMjBBPYqwpUUG0tMbXLO4u4mgVm7 iYVztIKwcHsSqPy1ny1g2uX0S86Xsg5rn4hd3IBNRUgn/KLMvTYnY3jmjnfHyAHC 94q/oKHgjyOleBnRzuxsVWEp0JhVIaGwgrE1KY2HMY4tH2Pb+UP4+kREE07bXu81 uv88Hye9/EoZusm/U+9TAN0oVJJGiQZOefIlaPlFfli6J8QWQ5fw== Received: from phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta01.appoci.oracle.com [138.1.114.2]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 4abks7g4v2-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Mon, 10 Nov 2025 17:34:54 +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 5AAG8pX2007618; Mon, 10 Nov 2025 17:34:53 GMT Received: from byapr05cu005.outbound.protection.outlook.com (mail-westusazon11010043.outbound.protection.outlook.com [52.101.85.43]) by phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 4a9va8yd4c-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Mon, 10 Nov 2025 17:34:53 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=JOrq6VZQ8fVOAWn8Crxxr6rT8ZUdSWrdkpV/vRn7JUG0n//D5j4+hP7FN0IWlYSgzTIgeZ9Ic/Ri8sQEkOogwJJo4f1E7+UmsJjPSgtcha/50DM+s5SV5wvwCMKxtV7pCfRN5ITTk06DjWutQzjY33V2I0Yn1eTrvQtA9T0JfwYk0xVbGwxcnMo0zLUrknwR/Rl/R47wxbCu2WyAlKMS2z8l1eVsmwKrQ2oWAdvijNepcWEzlCHrY2OWu/mN637mAfdBd6EIYFUseWisygsNRAXN8vldxwQRLzay+U3DKXgMeUmGVpW9gPq52907stQCV8NP4bEnoUNzMxCyXkA97Q== 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=JrtdXx6/1wno+2gkrkRU4ta3j83QhbodkWj/iyI36fM=; b=NW918Bvn+yPiGfAOawvrI/vQs8bB0NS/lDeFcDGaL5tBAYbRiFvapFbsdHGDPnztr1OVmO7oQ5i0LJfjZjjATzf8ZLUndNNVc1cjVAB4lsiiI/DL1U0CPGgkd+2ku+GL6Ntb7i2kGx+MLscTRzYFZc0129U2CaQ0cY277/qh34aQylLLGT+Z+cgkPNuqO0LCF+GxFHLdvHDpq5LwLx9AjVQiZYb2yh8M/Z6o4dQjjyrcbbvIqsSInIjwEbQ87C/9W6FtF1G+eIEaYSCHFQ3EVfqPglk6L2K3Mz/QRy3DU0uM2+WmXkqw7KWYkhyPkaPbJmQk44HV04E9X4Nad56jxA== 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=JrtdXx6/1wno+2gkrkRU4ta3j83QhbodkWj/iyI36fM=; b=lVye0yZvrYIwYBU4+PhQKbUmuIdRICDD+sfi4/1VjjTZ2I1io+i0spqgedcfBEZG2WD7CSkFB8Hb2BlX+OHyZTc4cy5hIKy4bktGsrnC0vX78nsmREvdOTmXr/crxYyQYRc35tZAaxfktOVXZCpa9pTCCGTl56UbckZ6nJNaBPE= Received: from DM4PR10MB8218.namprd10.prod.outlook.com (2603:10b6:8:1cc::16) by SA2PR10MB4474.namprd10.prod.outlook.com (2603:10b6:806:11b::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9298.16; Mon, 10 Nov 2025 17:34:48 +0000 Received: from DM4PR10MB8218.namprd10.prod.outlook.com ([fe80::2650:55cf:2816:5f2]) by DM4PR10MB8218.namprd10.prod.outlook.com ([fe80::2650:55cf:2816:5f2%7]) with mapi id 15.20.9298.010; Mon, 10 Nov 2025 17:34:48 +0000 Date: Mon, 10 Nov 2025 17:34:46 +0000 From: Lorenzo Stoakes To: Vlastimil Babka Cc: Andrew Morton , Jonathan Corbet , David Hildenbrand , "Liam R . Howlett" , Mike Rapoport , Suren Baghdasaryan , Michal Hocko , Steven Rostedt , Masami Hiramatsu , Mathieu Desnoyers , Jann Horn , Pedro Falcato , Zi Yan , Baolin Wang , Nico Pache , Ryan Roberts , Dev Jain , Barry Song , Lance Yang , linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org, linux-doc@vger.kernel.org, linux-mm@kvack.org, linux-trace-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, Andrei Vagin Subject: Re: [PATCH v3 2/8] mm: add atomic VMA flags and set VM_MAYBE_GUARD as such Message-ID: References: <945fbe45-1ee7-4108-b01a-a8d2b0bb9cfe@suse.cz> Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <945fbe45-1ee7-4108-b01a-a8d2b0bb9cfe@suse.cz> X-ClientProxiedBy: LO4P123CA0557.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:33b::13) To DM4PR10MB8218.namprd10.prod.outlook.com (2603:10b6:8:1cc::16) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DM4PR10MB8218:EE_|SA2PR10MB4474:EE_ X-MS-Office365-Filtering-Correlation-Id: 868ff4bf-9570-4e64-cc52-08de207f7287 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|7416014|1800799024|366016|7053199007; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?vw+IUfep4zyAU7J5pBlEqFFp/UUASQdAQfrArtNTC1Ra2v/FY0sTrRS1yXzB?= =?us-ascii?Q?DA0U/rJVgSAFonoWnb7QUvfAWcRi6r5+atUTkaEM8jcEWf/lbXmC40sdIJWF?= =?us-ascii?Q?59nJV39aC+9MQqvgkETINCB3RIbgIXWsaUeoLSJlJbUAkajs0CctW86jLhg5?= =?us-ascii?Q?qGuqIAE5WoOfUthA6BV+2ysZSj4DbllMzj+YXtmI0dJheze70Jo8WKTgUbJ6?= =?us-ascii?Q?5gjsfrqyW8ouIFQfj32Om18xYXuVi974c3JMEIId6OTw7AbPNBKTp++ua3T6?= =?us-ascii?Q?tDEN/g6Pf1cY5041nb7dw+rcbXrMUc6JjilIhXi78J3FYF3b0QSFVvU9kJv/?= =?us-ascii?Q?bQMdEnx/1gdwDSTsW2NkzK36mogmozFKIAXTzS2roFKFo5wdL0ckxgf/RY1J?= =?us-ascii?Q?4JqULtCKNGku5R6Agx6jGedZU7poKbISnkE3qFFXGMTqmzEwnh6K64+i9kxQ?= =?us-ascii?Q?oklu+E+8MNq68+78yt3RHzhBh+UK73HSGeFvrR5t3ZP091N6VwEtDzK14h3h?= =?us-ascii?Q?Tk1ClElY/wqIDvwPFMst3ii7x6C9C+fEzwyA/db3uFKj64/MVxXhKmXWdam0?= =?us-ascii?Q?JcsRUCDN5Pobg3bEGT6lnlFXFcvbAx7EDlgLVTQZjQJ293tLYWyhUZiIdhrr?= =?us-ascii?Q?0ZZRhsqOuAyA2Hw6bjuCJt4UkqENjLqlJvnGMdUVwITz7fZlkjLjHiDtV8ur?= =?us-ascii?Q?Ve0Zh95ETajtn0bJ/RmaN5rgmMjUreWjmL7f0zlIXjeYiqTXj7G+47mTUPpf?= =?us-ascii?Q?QhqREevc8rIyf6E44l11yX77LM/V44o+t1NmYf+evL4/xjamS7PTl+F+URqx?= =?us-ascii?Q?eChWpCWoOGwxFj12g2Eq3eHcLWVvHJMiWqTwt5CM0g1mT0FcLiEjCW0XwFwB?= =?us-ascii?Q?KTEVR3V3f57QdvFNU+5MphyF1s3FHhwe0ExisTqwh1Q2EAnGbTQx5j8kbbCu?= =?us-ascii?Q?f0Hk5oOHMgFn5G8YR9xcX9LTOPnkG7NIY3ZL48JG0mJ+RQm3xREfHItgB4eA?= =?us-ascii?Q?P2NVf3LLxXfQppdorOkofZrp3DsS+Qim+GalP33DjKRFCP/isoCcRtrcxM6c?= =?us-ascii?Q?cfgDMqWiNeEMAeFpAFfwOcj4aB+iDeM/ENeaLToRA6wOSmhiWEmU2DCsO+O8?= =?us-ascii?Q?izYmGbequJ04yhECPQbaaEPgyY+GB2U/bwH8cwwp8JqnCSsx2/DhJF75ovw1?= =?us-ascii?Q?0UJdEiWVJH4NvEh8wZBZKSpW/KQh7jkF+4CIsDSw2D9susFFjCKNg/QmhY7I?= =?us-ascii?Q?uh+qsZvEyAmtJ4I4flYgCRz0p+/xb2STVuuQN16A6+RRQGvx9zAlRfagbrza?= =?us-ascii?Q?9fNY9QKQZmbET1Gx/CwPdxw+hJZJ0U8Abx0rQ1mm9A7ynuwumEqC8upkxcW9?= =?us-ascii?Q?ULsn46PxC+Q0rU41kDFjBejOl08PwUWFD7s8ggP1zcRAVObBlRXu2l3cHNqh?= =?us-ascii?Q?3fufqPdOAP/snf4PFQT4SI9PelYhInkO?= 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)(7416014)(1800799024)(366016)(7053199007);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?UX5utoXDA81q37E0uUcyzB6oc0P8p4OykzCS5C1Pto20H3rct5bnZlYmQ916?= =?us-ascii?Q?+KJkb/CjupW9aM4w3e8wHnNfNxz/dElNEvvjDHF596gUnVoDj6te/8CisDhc?= =?us-ascii?Q?CjVVoXZtAJA1glzm3h/3jnR2Q3V07geYzMxHk/skT/KdJC5jOcNWTbDW/TTF?= =?us-ascii?Q?670MFuHulP3NTnOrpI3YBtMh299v9xWnIQz/I6bqQoc0gPfe7v0/J5+QSg84?= =?us-ascii?Q?GEP4tAn6mYgSrfKFm8Ecv35iKzQw0Kx6nmyzBFEBsa7vSIObvpN/Dc0oy80a?= =?us-ascii?Q?OG88KeMdfmpLAUA65aaTtRuONlwvEjOCblEB+FAcB77iROZsjUpLwmGwI/6e?= =?us-ascii?Q?7cG2CqMraKBqTXNMQ99wI0c5yT7cTHwHmB6RkLXr8u9+4kaBgPY8XTH+ZBDH?= =?us-ascii?Q?uHo/tWyrEF1wiOP9QAnc9y51jkp347Hi5Vw45gPILwSSUoCZO1pfIzaa8U7I?= =?us-ascii?Q?O3XZ+HRCZL3v6zE0gP6hbXxSXk33/d+7uJog69d/TdY2j/hsF1WIInsfV0yw?= =?us-ascii?Q?6cZkJt2g39TtwxxVcSF35Wgd7vul1FtmWfvNgd9aX3g11dNPmUNNqmu+uxYm?= =?us-ascii?Q?0JGJNSK9WfC81HxMjYCvkrzLS0/boG6OYHb8P73qhRu0blDHMqeywI3ot45p?= =?us-ascii?Q?dEE16+jU7ZoRjV0RJhOrN+jlxsEq64VnMXO6h5MV0MPcN8WsJOaiYMc3vhIS?= =?us-ascii?Q?+IcwEK9NMaN1lAgZIUxZjSRgaI7Pw08z5obsuoVsufCFqQ8QcPSOTeZctIFs?= =?us-ascii?Q?ssvT1vCtP9CsV/YF8ZXFe0Ji0Sk7h4tiFE9lk3CXi20uuv4ktVLOw7G8QnRR?= =?us-ascii?Q?mtbIW4wPkTv0m36nz7bwipTLaTU97nTjZhViolnhq60BEAbNNMhzbffwg/3J?= =?us-ascii?Q?H1sX53JAwGMhZ6ZlQQbfa61lgmGviQNDzZkKEh9zY0ikQFYa5EhJaS7MyjMp?= =?us-ascii?Q?51DR94PHZudg0y0pMgm5Ho1NoxkOy4UCIOteS2+NRBSSwtoNcTzuFx02HboA?= =?us-ascii?Q?V/lu1F5MhwuM+7iCnQ9FKWe1E0DRRX2piNuxsHMdEyhxzB/FzVUqDo/h4tgl?= =?us-ascii?Q?Rsig7satnrt2YTCthGVEQ7wdx+bvb2MRG+h+E4H1yEx+iaTOqavfAjRJH0Qt?= =?us-ascii?Q?S5EUDwxl4VcMcI8tFD36E5wdvH+axXkMBwhV928Ei7febFw/SHVkIJPFs5wH?= =?us-ascii?Q?olJ00EV7h4aGpCHeuBcLhuZfuW1mbDZSRRkZfFoKm01JJxMqvG8YvwR0pC3D?= =?us-ascii?Q?rEyHzUxDqS4Qck+YkA9SSRwSXkMci99rZ+3RFjYjl0IuBHrWGDgIE+yvExfJ?= =?us-ascii?Q?tLZMxpGe8AI9sM6EhDG8OqtbjBYsuFvJSNwu+DK+G+t+4XPe+J/QMk5BvaoR?= =?us-ascii?Q?xzC/BEQpRbi5sZNORpaACPRRWsqdgpBEHhRDEqXMnaKoqIo4Ku3w7QOpeUVX?= =?us-ascii?Q?wF3+j39dn5K5AEFfaBeomczP2BmjaNYWJwobqyHXTlar5rhbwRIRKG7gKyMi?= =?us-ascii?Q?1FG9Tbb21VZXs7+CQxYMXVxg32jOPEZFPkqFP7sIVIkufCwdNrjTFH8VpWWU?= =?us-ascii?Q?YfAaGLz3k74HUs95qiie2g2gndJAMD8JJV+Aeq22xgattNAAEdJnxXyENncM?= =?us-ascii?Q?CQ=3D=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: 86gPTj7JWHCfCtK3C0wCRoAuuHXbwvNQFVM1+HOu19Okg91DjGmpBCtsBXFhzwNT8sX7MrZ75PN3Jm59ps5jIMbeGG3XbTQkVhliVLapUzTB3G6LC4UAUZOECDP65zgMahsWKNfaiBDD9MvLD7FXRyrdTs+zJu46r8zGGBBnkXEBQBP+08/HZ/AIGw+I7mVhJX1yUMTP94cTYmGu+62vXMB5hViwt+QgiRjNJhKHPBWpXY7iLGvvIrOaeQqXMJpntYsAtprD4UKNLHfFT2lYw6YbES715710DQLP5o8/q4NuncA1Ze3Diurbx3CXKAEdv9saJSoftWebahTmVUrlwPETblylOVYsFOov0tyddeeBj8eTPSju8N8Qu0LizRkkUZ7oTmVQ2p0WhWM2kNx3Q8Io7kugqh62U8msInmqMJRHPDYCxKVL7zfVhE2Xk5lSJY7HbR/N9kVK/X7RTF9Cm2Ie4kIiHCb/nlS3HdCYEG3CfKIsPgl6kjHqwNwrt+ubrRqJH8t9OrNiACBiRWfoZh74xrFb3jIzy/VIg+19N2MQJ6lRJoiypvz1JBgzTBaYGRdzxnjmYAq9tY8W7lN03breuR6HDiL11ypzpUVw5P4= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 868ff4bf-9570-4e64-cc52-08de207f7287 X-MS-Exchange-CrossTenant-AuthSource: DM4PR10MB8218.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Nov 2025 17:34:48.8245 (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: pXL3lQ66ygYH0C5P+n6smzTQdCLNAdxAYv5vohGL6LOyLbTIC0uiB2zQxWPTWESvUreUXPo9qjgPITb4TzG1WGW05C3WmbvqOTWzlYbie+E= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA2PR10MB4474 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2025-11-10_06,2025-11-10_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 adultscore=0 malwarescore=0 spamscore=0 mlxscore=0 bulkscore=0 suspectscore=0 mlxlogscore=945 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2510240000 definitions=main-2511100149 X-Proofpoint-GUID: qtiXKSGnjnFiGVl7g7h0v-cD8Cy9AAaE X-Authority-Analysis: v=2.4 cv=L7cQguT8 c=1 sm=1 tr=0 ts=6912223e cx=c_pps a=XiAAW1AwiKB2Y8Wsi+sD2Q==:117 a=XiAAW1AwiKB2Y8Wsi+sD2Q==:17 a=6eWqkTHjU83fiwn7nKZWdM+Sl24=:19 a=z/mQ4Ysz8XfWz/Q5cLBRGdckG28=:19 a=lCpzRmAYbLLaTzLvsPZ7Mbvzbb8=:19 a=xqWC_Br6kY4A:10 a=kj9zAlcOel0A:10 a=6UeiqGixMTsA:10 a=GoEa3M9JfhUA:10 a=VkNPw1HP01LnGYTKEx00:22 a=yPCof4ZbAAAA:8 a=CDf0Uh2iYi78AkWnwqEA:9 a=CjuIK1q_8ugA:10 a=nl4s5V0KI7Kw-pW0DWrs:22 a=pHzHmUro8NiASowvMSCR:22 a=xoEH_sTeL_Rfw54TyV31:22 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUxMTEwMDE0MSBTYWx0ZWRfX8N5j6HuFtp/F MstzyM2ee/nr9Q8i631Ubzrt1U7lphKu5Gk/PMR2NVwx62Gxpvt2eDm8u55iDMQrklqiTAmyrj1 0ZOb/RCl3xVBcdRQ7CM5pkxIKAdopWa5DlE6PxvAf+ZszEx/dZV9MrO+/hs9o+hOgeolExqZtmS 3EqTpYr80fWz4YQ7FCGZ1UBYpI9D+p2t8TVBoP+0oUgrCMZhzgtlWyuwTIy9BwEA6oioTitSYpg ybZvM4Yt1r+cBplPG6ePjhfXGUK8wuQVMET5biTZ1jvp/3dC44nF6tphVZR6s/vcG7r3db1JuRk bTVMUDAbEMf6emXWx0HZPYbWleJw4/MeVF+Grv8SMKQ8K7pgosZC7tUgHhxMijCwRjLTDxGTCAL ZkxSidHjJ8ugQW4/X3wDYn+ASq4RVQ== X-Proofpoint-ORIG-GUID: qtiXKSGnjnFiGVl7g7h0v-cD8Cy9AAaE X-Rspam-User: X-Rspamd-Server: rspam08 X-Rspamd-Queue-Id: 64D6A18001B X-Stat-Signature: xrq85ssqfnj1jmch8q9wr9r9i39ciw6y X-HE-Tag: 1762796104-269274 X-HE-Meta: U2FsdGVkX1/SbYGXVZpzNDIt+U0Z2ej5AmRAntaqcO28AAVeB3uRcBWDp/RADcjUrOk0erYlMFbe4xhJ+WwMxPkSpuiovC37l1zfQgoRrAyHU8/UWMZGml0GC7nZG6iqSi+d8wSzZ3vnPN9Ichj8vd2aimBraI/maOiUqLRz7VczAB0qCXaVtaIv3Vm/ZDdAZiN/T+UqEfqQO3YPaiIsdA2o5+i5wXH+wENCBCQl27syh/zPjrE7nJE7am0Zl1Q9FnsJIYxCCOXl5yD7Wwd3Rw1wdPDBYtb5ZT/ysBQgFTp7nX3tMW0qHNTpu6mVtJt9f5aLqnLkrV6GXKjE86jT4YQs8sjxWNZYog3XJfEuMNsxWDDgvXEhDG3ZBcDnDE49FwpA1FfS7pxaD0UHbNZb2p98svC5E/Hfe+zuKOfuDinjDg5flQnqytYd7cxAD3L21BP2Hk6RvSFOgqWzmXIkRiX3oJZ2/KIdwyaFS9lGQTyz2wmkwqzZTKTgbtEfZ7hdgP1u1mt9p3a4iFloYGBrt+m9mL+F/Sd2RnpwUNGNXygRaBO6E1JtkCfx+qdBfy3aoNDbFL6TpCSARqmQh2NKc3/OllLN5EGM++PGJbqVmnBrSMEnNMRxpZ4K1ErvIay00QLPDJJDGZErtB64CvCCaAesxvZJauhpbHPfQlq/3LV98Y2l9gTfz9pVozSCWQkKSP/KFEdZNZ4OuR2Gkh9pSdd6OBiHER2LjA+CwvIWK3HeYiyrPeIzyHWJ98lJHms6MBlEY7HSwS3udjmKhy+3fNysYxw4DS+BBYwICXanM90yJX3XiZiMHQPq1kaymsOzG3/k6zsYWtDgPQQyjz9HBjozrN1EpmiO1n/z5pvoYJXfiI4v/qZI31KD4YGIKULHTcL7z6uWMWOUJjeV/n9TLpJrXZVXd0fevH4H1U/s657gTB6qermDHtxJAsiGi2QBzHXp3wh1qIYlsweCVLo LaQb2Qyb N3E2KfhlVX9zE06B5ruYM+cYudR+im5vI31lJz5aVfCzvpgqBjWohcHt2N3kpD61Q74xgWH9jaI9evKbvGuouH8MmQSo8sp/Rm1pi5De5Fn/FSJqiLaDeuhRcIH47eRYxqKHsQkum0ZNpKPyoySr6Teo5V2CMdif4pSK1Ko0Hn5PqtryC/aVJc+8Q5uwh7rLYEdSioqKJETaqn8AxBQ0vnOrjzIqyUo+fgBilR685cCmYQZqXTU8NJ9YMuHj+3XRa550+NpSs14uUomo4Kjs6IGaeMwwUhNepEOITP31Ie3RzrSd4b3+VBuPUR1BLkurFQ/1Z+xY1QkKf3Dd339DRN7xRIw8QjwqKLv371jo6mB6AjsJjKddkYhJOxaSFPcjV0CnABnyialEGoFf7zV4UPs19nU+erHehGNbMLdj3LsXONCZiPPLlRT7+BlI43XJQsdsTzoJvsrYOUhgwuqTgIa5/TJ6Y1gGUAt/p+qm4LzO4Ypg41yX6osDscOgBdKiW1RhJEajpjc5oWdHPNuvlzlk8QOSBbAOvLmChemuByKklSGC5rZRQnQ2CGLp3Un19d/F685+GlNHYK2Ok2ps19h26CV5UlvwEUrN/5dgo6HvY7ZUQxR+u1MAX6Ucv2dMm+MyNuAAwLLl8N/xr/ACQr3ieV8kM0gQDDa3ngdhbFSyo2R0TpOd+oMkC6o1G4E74ORlQ 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: On Mon, Nov 10, 2025 at 04:51:27PM +0100, Vlastimil Babka wrote: > On 11/7/25 17:11, Lorenzo Stoakes wrote: > > This patch adds the ability to atomically set VMA flags with only the mmap > > read/VMA read lock held. > > > > As this could be hugely problematic for VMA flags in general given that all > > other accesses are non-atomic and serialised by the mmap/VMA locks, we > > implement this with a strict allow-list - that is, only designated flags > > are allowed to do this. > > > > We make VM_MAYBE_GUARD one of these flags. > > > > Reviewed-by: Pedro Falcato > > Reviewed-by: Vlastimil Babka > > Signed-off-by: Lorenzo Stoakes > > --- > > include/linux/mm.h | 42 ++++++++++++++++++++++++++++++++++++++++++ > > 1 file changed, 42 insertions(+) > > > > diff --git a/include/linux/mm.h b/include/linux/mm.h > > index 2a5516bff75a..699566c21ff7 100644 > > --- a/include/linux/mm.h > > +++ b/include/linux/mm.h > > @@ -518,6 +518,9 @@ extern unsigned int kobjsize(const void *objp); > > /* This mask represents all the VMA flag bits used by mlock */ > > #define VM_LOCKED_MASK (VM_LOCKED | VM_LOCKONFAULT) > > > > +/* These flags can be updated atomically via VMA/mmap read lock. */ > > +#define VM_ATOMIC_SET_ALLOWED VM_MAYBE_GUARD > > + > > /* Arch-specific flags to clear when updating VM flags on protection change */ > > #ifndef VM_ARCH_CLEAR > > # define VM_ARCH_CLEAR VM_NONE > > @@ -860,6 +863,45 @@ static inline void vm_flags_mod(struct vm_area_struct *vma, > > __vm_flags_mod(vma, set, clear); > > } > > > > +static inline bool __vma_flag_atomic_valid(struct vm_area_struct *vma, > > + int bit) > > +{ > > + const vm_flags_t mask = BIT(bit); > > + > > + /* Only specific flags are permitted */ > > + if (WARN_ON_ONCE(!(mask & VM_ATOMIC_SET_ALLOWED))) > > + return false; > > + > > + return true; > > +} > > + > > +/* > > + * Set VMA flag atomically. Requires only VMA/mmap read lock. Only specific > > + * valid flags are allowed to do this. > > + */ > > +static inline void vma_flag_set_atomic(struct vm_area_struct *vma, int bit) > > +{ > > + /* mmap read lock/VMA read lock must be held. */ > > + if (!rwsem_is_locked(&vma->vm_mm->mmap_lock)) > > + vma_assert_locked(vma); > > + > > + if (__vma_flag_atomic_valid(vma, bit)) > > + set_bit(bit, &vma->__vm_flags); > > +} > > + > > +/* > > + * Test for VMA flag atomically. Requires no locks. Only specific valid flags > > + * are allowed to do this. > > + * > > + * This is necessarily racey, so callers must ensure that serialisation is > > + * achieved through some other means, or that races are permissible. > > + */ > > +static inline bool vma_flag_test_atomic(struct vm_area_struct *vma, int bit) > > +{ > > + if (__vma_flag_atomic_valid(vma, bit)) > > + return test_bit(bit, &vma->__vm_flags); > > +} > > Hm clang is unhappy here. > > ./include/linux/mm.h:932:1: error: non-void function does not return a value in all control paths [-Werror,-Wreturn-type] > 932 | } > | ^ > 1 error generated. Yeah fun that gcc doesn't highlight this, god knows why not. I thought I had fixed this (I remember it coming up in testing) but clearly I fixed at the wrong commit. > > I don't have CONFIG_WERROR enabled though, so not sure why it's not just a > warning, as the function is unused until patch 5/8 which adds a "return > false" here. So it's just a potential bisection annoyance with clang. > > Andrew could you move that hunk from to this patch? Thanks. I don't think this is the right solution. Let's just add a return false. Will send a fix-patch. > > > + > > static inline void vma_set_anonymous(struct vm_area_struct *vma) > > { > > vma->vm_ops = NULL; > Cheers, Lorenzo