From patchwork Wed Mar 5 14:55:06 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Lorenzo Stoakes X-Patchwork-Id: 14003138 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 0DF0AC282DE for ; Wed, 5 Mar 2025 18:34:12 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 6674B280006; Wed, 5 Mar 2025 13:32:27 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 6160C280003; Wed, 5 Mar 2025 13:32:27 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 41D5B280006; Wed, 5 Mar 2025 13:32:27 -0500 (EST) 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 DE05E280003 for ; Wed, 5 Mar 2025 13:32:26 -0500 (EST) Received: from smtpin25.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id E0FBFC05D5 for ; Wed, 5 Mar 2025 14:55:41 +0000 (UTC) X-FDA: 83187796482.25.3914DD2 Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) by imf02.hostedemail.com (Postfix) with ESMTP id 05BEB80005 for ; Wed, 5 Mar 2025 14:55:37 +0000 (UTC) Authentication-Results: imf02.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2023-11-20 header.b="N1MK/53i"; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b=rse3bnRV; arc=pass ("microsoft.com:s=arcselector10001:i=1"); spf=pass (imf02.hostedemail.com: domain of lorenzo.stoakes@oracle.com designates 205.220.177.32 as permitted sender) smtp.mailfrom=lorenzo.stoakes@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=1741186538; 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: references:dkim-signature; bh=1gVVy+/zoBzLbQXgAV9mf4bdkA11rmz/sJ3NMWvOBj8=; b=ykqDHeiINArMCoUEUKM7qzum9KUF4EiB5tN5n5Og7GjK2IhB6axovAmCL5uzGJmYByPlPt 1hPXJdFjUAOV7SWRBZnSweP/xpK6VsnANYOVNFQcTIMEuICZzP/IAQkAuwTooeR2B+FJPB DWIKJQSTD1FZtMLrCvyHPwMP3TwoePY= ARC-Authentication-Results: i=2; imf02.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2023-11-20 header.b="N1MK/53i"; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b=rse3bnRV; arc=pass ("microsoft.com:s=arcselector10001:i=1"); spf=pass (imf02.hostedemail.com: domain of lorenzo.stoakes@oracle.com designates 205.220.177.32 as permitted sender) smtp.mailfrom=lorenzo.stoakes@oracle.com; dmarc=pass (policy=reject) header.from=oracle.com ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1741186538; a=rsa-sha256; cv=pass; b=StqGoK2v7EtxqC4JIyLilRcXBwS0ZdHHdKTQi6rIaDQrqf1c5eSC2J5qnPcm78lWkce7if j17RFsKGKDKVnkj5PfZzpUYAyemdUq8fIjqHYqwkS0LdvZ7+Yrm0LMvkpw4gEPq4DW4E+x XmXbk3KG7Lr27VcOMKFP+9GtJCzwN4w= Received: from pps.filterd (m0246632.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 525C3smF021001; Wed, 5 Mar 2025 14:55:26 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=cc :content-transfer-encoding:content-type:date:from:message-id :mime-version:subject:to; s=corp-2023-11-20; bh=1gVVy+/zoBzLbQXg AV9mf4bdkA11rmz/sJ3NMWvOBj8=; b=N1MK/53iq3fpi5Dpiq1ZfgYBXX7/Vove 0OHWOtNJdPZ8TR1uMeEYTdnTRJ++jz8ylsWYzBNRrgyxO9OAJoEWhGxksz1QPeAR 9woGtP00vWZRckzzFZ577KQamuFSW3KGyF7L2MUIJ1ksdTtjXt9TV0KN5aHVj7za 4NRz+pzrekbB747/g4e2CQqC0Si+BoERWtNiMJ/PrBxrcoVqPdp+dfretsaO+gxf /+718EJZfQE5wYVonq1g0qa2aZGFq7yY/CI6i/gNVB5xEYdKK3X9O34KWCUGropm yprQT3fSvPQtV5AqbhKpj7xUVWAdNTl7W9hKa+e6wncpSMLVwA0OpQ== Received: from iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta02.appoci.oracle.com [147.154.18.20]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 453u86qsm8-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 05 Mar 2025 14:55:26 +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 525DfD1L011064; Wed, 5 Mar 2025 14:55:25 GMT Received: from nam11-bn8-obe.outbound.protection.outlook.com (mail-bn8nam11lp2172.outbound.protection.outlook.com [104.47.58.172]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 453rpc24k0-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 05 Mar 2025 14:55:25 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=Ok7BoP03QwA5+5tIZzDCkbKBU0gkOclZYmSHyMIQ+VovAYARl323eCqeWSaQwc1gj3FD1bbbNY8fZl1Tyw6FHfsJY/Q46vapi6uhC8CQ2nmNDm76bWpkGdPz8mhbBUXbq1o9tHZ0IZ0rZAl8aIBB2M26VYuw7Itf3yFYkn1o63SvsyJvXgEnfwX3geCQKlHCN2nqR486bUq2/E+U/K8MfPae04hXe4TmZn6NqGMc3eQ3HgHn5fox2m/xpre+4ud1j7dNqLO59IKaKrAvT4PNR5dwyuS/P2HR6NjBIiRgiYUKqO2N3Jl7OlYZ5fyXajRfPI2SODaT4q0jNC75gLVFDQ== 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=1gVVy+/zoBzLbQXgAV9mf4bdkA11rmz/sJ3NMWvOBj8=; b=Bg6T6OGz4h4ZiFa3/GAu8mCTU6izZNuf11petMKtWY3VnBo14oZO36bFQ/V9xNRm+06e0G5Mo+xIG+t/vRUNzE+LsYAJ7nPzFlPv0geIYwVfuyLN2UE7M0VDHMlnZMT0Js9Offmq8XBmrub5fiyaN/OKbFqsMEPhgHSOkqVVj3Sx9qpL7s4nwAl7ppKg1hh0r/8h0eL6ROEOxH7Tspp45UojjPJ4G2NbjxQqRrl9KtKqAc3raDDuUQ5bqBu1U4Ttaf/7GEACyGs8iBCMq/GGdTphES+1uOob9tcRaf9PU2np9J5ghsqS34He/UJ7VZKNQ0vhnOINH3vUgh67wW4XUg== 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=1gVVy+/zoBzLbQXgAV9mf4bdkA11rmz/sJ3NMWvOBj8=; b=rse3bnRVBxv9pwh67x495/c2DGOuvzTb5C3SRGNKtlyIbAzim+i3ZC8O2/cUZUJtd0Ljcu83u2z1gQZdLf+0Oe1VbuVwtT9sjLvZKzGoG8+ZcAEYT6FGWjvYV0DlSSbQ6v2FfSltigPtxpJkNea6OHC2q4wJ9w7x83cNtHVh7kE= Received: from MN2PR10MB4112.namprd10.prod.outlook.com (2603:10b6:208:11e::33) by SN7PR10MB6547.namprd10.prod.outlook.com (2603:10b6:806:2aa::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8511.17; Wed, 5 Mar 2025 14:55:23 +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, 5 Mar 2025 14:55:23 +0000 From: Lorenzo Stoakes To: Andrew Morton Cc: Vlastimil Babka , Jann Horn , "Liam R . Howlett" , Alexander Viro , Christian Brauner , Jan Kara , Paul Moore , Stephen Smalley , Ondrej Mosnacek , Suren Baghdasaryan , David Hildenbrand , Matthew Wilcox , linux-mm@kvack.org, linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org, selinux@vger.kernel.org Subject: [RFC PATCH 0/2] mm: introduce anon_vma flags, reduce kernel allocs Date: Wed, 5 Mar 2025 14:55:06 +0000 Message-ID: X-Mailer: git-send-email 2.48.1 X-ClientProxiedBy: LO2P123CA0035.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600::23) To MN2PR10MB4112.namprd10.prod.outlook.com (2603:10b6:208:11e::33) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: MN2PR10MB4112:EE_|SN7PR10MB6547:EE_ X-MS-Office365-Filtering-Correlation-Id: bcd7d161-f975-4747-1387-08dd5bf5c1c2 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|7416014|376014|366016; X-Microsoft-Antispam-Message-Info: 7J+Hd4zRQdEHm6vEwrOd3rgGf1fsW0wp660QrvjYHAYV3eZpaTWjzVrtaNl7hbaQwlNW29aR853eDAmArt0eri0rt0FU6WSNsOQ8kyzRXaLA4SAxiMnXcx8C2h8X/cvfv0ofYLS/bxnZaseb68QFdXUHdJJAnBOiE5MLpHsvKvbnd4onYXodmrdWM2/HVCv/DTZeISxQ/C0kuY6CTisYkQjL3ZFW0pPYORNELwUY21iQMO8jT0GgtQmCmOmP8JoTMOyS1qMfgkqOwqndUqa5nfDFJ8gYv6wTmqQOo9tuTE534cz+7RDBs0zv2T0PDfvpJj/kn0kneT9sGo1KvQlCQ1k6CqUFM5YgQ933qygZDod7T4z+fpgVt/7Gw3yl3V4jCTEpiL9TCfX2/ccCTx3uqmI10vc8kUhz3kjkZ5r3GS+3q2DiPRK+44BAf127oBIvqYRBH3ULPrIE138/D6NvIG1mzz33z+ScwQRULlO79JWzI2xUC+AU1TD4SyDfZDljx2QkZfgBXL8wKFgXyKV+TcMM+I5jGAJGuzl27Vo0PBD0l6CNpTgdjDEpDWC++s67G4034YHikesGunhLi4bYG5ix3aOS/iajPlk7OfTs1ozUIa2OY8/gPXzUOylDDx24arhQ3K4E3LJmGAoZ1fUd4h+O2l6K2bXWDgJVXFJKuhj/5Rz00nZEW6uPAvQdnoMxoHbFwv7TrW6dwNqu5ED+Csghm3+P6o1aj8d3d20EDxXM2inTzmxPpEc258lt4rNDsCAH2yS+TADUcpOsMyyyiwKPcYV+mk7rDkckMvL7XaQFCdsmGMXmWkRrcnJ0ULf0PiEYuIWnkT1ZxD38fMcTrnDN1DIw32U2gmSOUpw5vh6vjSHk9ifYiNaw3u15SXtdkY842rc+7FmLVNuYTU5qiLpM/Hc1H/NbruNfjTTNGsHOj1NAUktwxrajNJHPUPkGASYxzHFzYq8LsjEe3ajNrD34IrlsjXl6GM+dXPxeXNL6J483gU2/xMLt1jn1c/yjKDwU5T59z33fEMQjMXkW9VAiG3M2rT/HFrK7czQLWsVRTjmNI3v1eu0ZcsOs3xYhkz6FZVz0RwOtHIwPdZ35waSajOHADMc9KF6DLHeVrJ62Y8by/1MofbiVtFd7oT22u3hBmYHTukcfpsztPd9i0vk7QsFlg/qNfxtt7F1KT8YtQB4Mlr/lfwX/jD3Exe8THnngAzoIUBqH4OUchx8gzh6Ip7BvDXiyirXfr5PNdhZVBS0LaPH6da/7IRtM5u73rcgwhSFGa2rES1Anai/iYW41VNhyOmUFf3SMawiXLhH44dx+hYLbGltIPSBnogKpLZX3gjD7ak47WJvYwlBR4G2SuLHMre+Kvce1kCitIuUfhy3aJaxW+KET+r82Yauy 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)(1800799024)(7416014)(376014)(366016);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: iA8DgMqlZ4CTwSGa1fhiOeMeNHMCzUJEjL3DrvTWadvPZGKPIgLh1221E1OguHJNiOxZZpv+BQ1woEsSDfQxV+XFBzntUK6Y9+Bm/6KpjlRvcKHFwpQq2jbQytAX0VCy0w8js+64MrvVvpiH6Yjy7cSdRd8lxdhdg+8a/Swr7bT3hs6t/KxgUAHJruKfYZu+E3rcSwPgk2WFEyKKAo6s7U+S9gGL9M3VTS64R7dq53qN6jPrxjXjRD9KK5NvK8tQPr5t+XsamzhkOfnmwWZSpVvxH78kUQoUUBXfs/totmfOgHE6gbNiv9KrA0LM67uBUqvddx15auX9cIG28n4nVGQaVTKwZq2MrC6Y2I/AxgUuwCprD857yKtWzVCXUJd8Z55PkPrQF30M1GBeWvXejltx0DltyE8o3/nltbbcWyYfPVZ1GR5e8xBZ1kwj3JEs05LyXLn17NkA4xYVbNO1kOYSvClZF/kLLAitqDu0fEVbiKLcl2/5YfJ01Y8lUylMB6h46hBOBUETGriUUxENQdvfRB89cXJnyEFMtsIIdVOtubZejiDbcT76DN5BJYEncJ3X41JMEz0GDaZs7KwnESrDclPBQCCMvnfUb7/OTGIgxO478GXTXdw4St+KMdKOR4A35p7bwyV7NU6T1KA0XA5lnEccxJA/9wUMmq4328z8JhqBQa0GLMgrWNlaVLiC5Hb5Q2xfbAMJ7VPVxjOpS/6KQYDyujY5O/mRggT2TPpJ4ZBavLFRwdXTgoLsxx3c/ao3zBUBoiuMQHz3pYXElxCakCGSP1LpUWHGdbjUoYBNo+niJCFH1WNPLrOAh38bA9fQaWDtlQVxKvv12am/NcN1d+/t+JTOmduCA3TinMs9WpeonDm4VqAk5s4s6cu52t28LHZD007L0tbhnqo0Vu79IY7IaUJvIGdDDdsvSmI5ixsmwko0f1CS09QKqHEzMLHwSgEmKhhOPjnJn8MR1sI0RCOV8jnwSI5zg/Q6lhS2cqgqN5Q7FXMU5Cz+z62zPZj4HtKBlW6LBvmjBk6JopXzYmoxSuRTxEkYMQ2jd6DAHSvKbcSwwqS4KOF/M6kCZViwBqQ1bdk6/erx45LBOZO5HOWqUIbglzq2c6k1RixY94XbxUP4cFMBPMFLJnBYm7UkNfHwcAYmArXH942YRpXZpcAgHeO+Z9u68/VcZ/ovZ7nV6u3QdrxFu1PhWeGYk2WKvWGRcg2yB9Qx4gIDao3vPd8lJ4L/2xByi+oGKmspt3XPQFEPXTb4rmMeK+U1ANItWJz9hCG8CUelUEEKYOqMQPwmVRYoULfiZuddCh+zh19vwgPOoEwEnwYVEjCFFjQ+G32x4qMKvOIIfhPkBGxSxgvQuBJ1IeEOdI84o34H3IvijiG8xU0VtqWSNYsN++XhFIRMx/9Zd7Cu6J0aaMICDjIXBBLJ+D6fwYyf7bbsfzf7XR3R1wrrSaZGst3PItkpQWgZ2B2uPgLnnB8jT+Kho+sjKlLha4ZxRBPgbsQdrNQGkQvtqRF6lFy7SCpjz4R/MMsttOVc8xboDppylm3vWzENmAh7LehE3ZN5Qmayboac2p3Lta3cH3E3AxEGxN7egeacrjLCQeT3jd3lcg== X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: bPqrRee74FzX++psfr8q5gsjG2nOayBCLXKExl0ShLqnQVGJmsn4LzTsyOE6aZOA0tyzhDEVCAVmfLJ4spASY0swiik5R4w8vh53a1MS449MI0RgiygZ7yBNCu+ktRvyWj0RtoAMr7HdmZBZi4Y+lIIRmseQqGrD22+GqOQJMcV/kYOGJEK7q1X9GkHryf8A2cWSAPQCbTn7183/Ec/RV6Jm0XppoVZ4lHG7UsgW4JzyhwWbcLHnKD5JFe/muBEL1cPmaTVMnbfsy+Y19pxwiNMBYmyi2DV4dh6tvfpx1EzTKv5PhA88bTqgRd55RqpKe9izKcxm9FWJQJKKf9tcsPfvt4d169etQ/AYKw4lRAQ7MzhdpH2oewK6eiR31DStVqSAD5+UmvYo2rkBR+J8fyF6XX9/a43T6SNYuL5uV2oVFsq8UszJ8Dmno835ji7/dVMAqz4hY8KVdo+22dpgirB3ZTTgZDCoNZt+jpjf35pvZYtUKP5wTVJihKN8r08RsYKPE9iEzmZYOcbK04lSZw2Xs/c/ohNpGzTQtBzfcUbZHKqe9zyJSYHQFsFwgjs81NaEA7QPvbVcst920t38/nU0329vONeVgMjPNOOvbtk= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: bcd7d161-f975-4747-1387-08dd5bf5c1c2 X-MS-Exchange-CrossTenant-AuthSource: MN2PR10MB4112.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Mar 2025 14:55:23.4213 (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: bwIdQivv9gQicykSRk3qYCqiPhSbjgaLBWPJWrrcoicXL57ZScaPfS54zwLuzPdT5vmKIk9wYI6XmNEr26dUQncEDzJ8ur7UNAuBU9C6jB8= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN7PR10MB6547 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-05_06,2025-03-05_01,2024-11-22_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxlogscore=714 adultscore=0 mlxscore=0 spamscore=0 bulkscore=88 suspectscore=0 malwarescore=0 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2502100000 definitions=main-2503050116 X-Proofpoint-ORIG-GUID: Dn5aYXanIi6B0Q_cV6EgV2BxTBKgCP10 X-Proofpoint-GUID: Dn5aYXanIi6B0Q_cV6EgV2BxTBKgCP10 X-Stat-Signature: 4xoknrua7fttqeutx61mhmyspowphiko X-Rspamd-Server: rspam11 X-Rspamd-Queue-Id: 05BEB80005 X-Rspam-User: X-HE-Tag: 1741186537-819430 X-HE-Meta: U2FsdGVkX1+QpxX6mTcudEht0MXLYqa0enT1TcW/Halw3RfZt56fGTka2NuKxN1IuiicImuF0WAC0twogO90dhA3trtqFnplYOiGIShrFUVpi8TUqKaC9NifC9EP+CUCNghupMwpAVc+LcRRIr5KUrTvRzyJZNW+wKI7+Hhkhdsp+yKMBCzgoieZ6uMRU6NYUw98YpCkHIrsFF88jsyU8tWrJh/fGt/vWC2XEKgnv9LlnMFfpAk5ZaGu7X/PZ88JlWbJegu0BbEIJQP3w7ragQV6+eoICOzlmjIxrgVp0EQpoIAeaLXNnoQOUqCIPkHGt+7SdkScUvtwxm4skOnJ1mtdJhX9ZOXZjZfuwBqOX97DyQbH4BPtke/X2ffvw6VXG1Slaq0bKFEqSnhPuFHeQnEOhK6ujyiiDNhOzOpkdJV+SC1dwmlTA2BsELI9kdoSa/gcYnfVIG2d+8a9rqdYLVi42iDslaShDcv75PQ1qvrRyTel42QXj5qciVOg5/Sc9DUDdCaQ0TjBQCVEMOYCNTinxORG41bIQuO4I97CprwN28mZj0rCOzRT7cUrkv1AwYztj0wjwNBNdPsiMS08Kj5SrHCXmjZvFCYkuU/qoMZpA29S2QRia9IQKT7JAZWbHB1X9zq8uhRs4AIb91skgAPgEuFfv+anE7Edw9kBuGow/vxHiO0KYJTSCBu1GGPTogg79E4GbYhPsAQXHrRyYWP+gXfIg3+3GjxX+pfY56WDyKg47slMTkUOtAtWjmkSQ2eMWW+gtAE3iSeyUGMaKmNTo34RX/FxyBW7K8iZLCYwEOhzmvranh1jOV+I8cMFaaQmaKwp3gnghrBHXaTkece7zrhl0k13gq5l3dP7sjnoCbWC8QTFss5xECHzFfrpjH93nHCoxveVbg/wLto9rO9a7ZhIYijTn/rtUPH+D7nMpcAh3S9pFp6O2Q7uUZCnmleMTSsWEl21WZ7rQp3 6967N9U8 zaOc+mY6ATlRVjt+EN84XEYMD3McLk8LEcermn32nhUvEs1BP4KifBxnc5iJ245ocr+8I+p9JSnmpZha6nveNv/AhM0KotQL7F0lXpuEHuzf1m7CX9fAh9gs0EbP6yimG1n6e7hwb/D2CiqiDtnpMIMzhTBS6hkSqZMcGsAjUffsz08VjVhsjyL3gG6xedmoXxIMyJtcr2xM4XYD3uloEWZgX3p00dcgdj8zka6H1Xl/VUTzxvBXs+cnI1tH6r96LkdW5kwCbpT/4aWFEh2xYFUVuS3D0JWQssbNrt0cecDU2VPq8NYZ+gZicXN/9L8l9RJr6LJdk6eMVyVAd2lATF+AVag6A/1ibBJTLH1o7IrkLydIWHreSl4agLvN0OVD9k5XLZk5A1hGNIUmyhcgrnQy8lvCA89BzwTpRRRPGJZHux0zvK+9AVXSdzpzHgah1dnzpazLlaiXT+9PtDEZu/WsxAXqxqldcJo1rObAm3yCtDCQuf/c5V1YbcRoxdljwdgIXf5/pFJnyRZA38iGcnGzlCe615p0WDcn+8RC6rCIf1wLANkUOGqX26Ho1d1oDRd8SiUc+flS48JSVuUKqvy+oZEvNA+fGeuU+O22PnRpvD0dkmK7cBOFN78PrySsDTgL7ZQGWuKQtpR5YLblvnpMPUcHXPCpxpicgaUyMK54rysWUzSVuqAhnv//1sE6LPCmW4FbvCjzQVUo= 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: VMA resources are scarce. This is a data structure whose weight we wish to reduce (certainly as slab allocations are unreclaimable and - for now - unmigratable). So adding additional fields is generally unviable, and VMA flags are equally as contended, and prevent VMA merge, further impacting overhead. We can however make use of the time-honoured kernel tradition of grabbing bits where we can. Since we can rely upon anon_vma allocations being at least system word-aligned, we have a handful of bits in the vma->anon_vma available to use as flags. In this series we establish doing so, and immediately use this to solve a problem encountered as part of the guard region feature (MADV_GUARD_INSTALL, MADV_GUARD_REMOVE). We absolutely must preserve guard regions over fork, however it turns out the only reasonable means of doing so is to establish an anon_vma even if the VMA is unfaulted. This creates unnecessary overhead, a problem extenuated by the extension of this functionality to file-backed regions, where such-allocated memory may never be utilised or freed until the end of the VMA's lifetime. We can avoid this if we have a means of indicating to fork that we wish to copy page tables without having to have this overhead. Having flags available in vma->anon_vma allows us to do so - we can therefore introduce a flag, ANON_VMA_UNFAULTED, which indicates that this is the case. We introduce wrapper functions to mask off these bits, and nearly every part of the kernel behaves precisely the same as a result, with only the desired change in behaviour in the forking logic. On fault, or any operation that actually requires an established anon_vma, the ANON_VMA_UNFAULTED flag is cleared and replaced by an actual anon_vma. An additional advantage of having this mechanism is that we can also remove this flag, should no 'real' anon_vma be established, and the user is executing MADV_GUARD_REMOVE on the whole VMA, meaning we can prevent future unneeded page table operations. A benefit of this change, aside from saving kernel memory allocations, is that THP page collapse is no longer impacted if we apply guard regions then remove them in their entirety from a VMA, as otherwise the immediate collapse of aligned page tables in retract_page_tables() cannot proceed. Lorenzo Stoakes (2): mm: introduce anon_vma flags and use wrapper functions mm/madvise: utilise anon_vma unfaulted flag on guard region install fs/coredump.c | 2 +- include/linux/mm_types.h | 67 ++++++++++++++++++++- include/linux/rmap.h | 4 +- kernel/fork.c | 4 +- mm/debug.c | 6 +- mm/huge_memory.c | 4 +- mm/khugepaged.c | 12 ++-- mm/ksm.c | 16 +++--- mm/madvise.c | 49 ++++++++++------ mm/memory.c | 6 +- mm/mmap.c | 2 +- mm/mprotect.c | 2 +- mm/mremap.c | 8 +-- mm/rmap.c | 42 +++++++------- mm/swapfile.c | 2 +- mm/userfaultfd.c | 2 +- mm/vma.c | 99 +++++++++++++++++++++++++------- mm/vma.h | 6 +- security/selinux/hooks.c | 2 +- tools/testing/vma/vma.c | 95 +++++++++++++++--------------- tools/testing/vma/vma_internal.h | 78 ++++++++++++++++++++++--- 21 files changed, 358 insertions(+), 150 deletions(-) --- 2.48.1