From patchwork Mon Mar 17 21:15:02 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Lorenzo Stoakes X-Patchwork-Id: 14019988 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 5ED34C282EC for ; Mon, 17 Mar 2025 21:15:31 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 9DD0B280003; Mon, 17 Mar 2025 17:15:29 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 98B11280001; Mon, 17 Mar 2025 17:15:29 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 7DE9D280003; Mon, 17 Mar 2025 17:15:29 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id 643A5280001 for ; Mon, 17 Mar 2025 17:15:29 -0400 (EDT) Received: from smtpin16.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id 5771EA9071 for ; Mon, 17 Mar 2025 21:15:30 +0000 (UTC) X-FDA: 83232299220.16.D7712FE Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) by imf17.hostedemail.com (Postfix) with ESMTP id 1352D40006 for ; Mon, 17 Mar 2025 21:15:26 +0000 (UTC) Authentication-Results: imf17.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2023-11-20 header.b=hegaMBj2; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b=ZieSJ+BG; spf=pass (imf17.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=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=1742246127; 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=6umxsCGfZk59c/SY4uSYmwZN5TVej+kNuNbhlwrvYrw=; b=YsPC4ikEHF/DZc8msOVh5xa1GVVDuUe4twHNRMA0hbRoIPa/1C5jHyolmM2NHvjv5YOjBk eE/v4+lNcI9aHp3DVvqDNylKa5vliOIblvPIeDzysgHV5NP6QAUyR55j05T0Ajj80CVPMr 4lFTFh1U66qKMciho2qHjIt7vhKEpZU= ARC-Authentication-Results: i=2; imf17.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2023-11-20 header.b=hegaMBj2; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b=ZieSJ+BG; spf=pass (imf17.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=pass ("microsoft.com:s=arcselector10001:i=1") ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1742246127; a=rsa-sha256; cv=pass; b=gar2lRECN5itHbfjFwNriliY9oyGI/1FemkTz4Cfr+MG+AfmWA+kHuOXggKfJDsglygtk2 RWs0MxsXSHZevtlywAQWLqMXnmJ2nhfD4S43PahZYvr5iLE6PSKimyh1dPHIA0K21G1ZUR BTK9ruTGGpO4eaLksEngZNoSodP65V8= Received: from pps.filterd (m0246630.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 52HKxT1L014880; Mon, 17 Mar 2025 21:15:23 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=6umxsCGfZk59c/SY 4uSYmwZN5TVej+kNuNbhlwrvYrw=; b=hegaMBj2M52qep4IyZHnTHP8neJbUg5S ErwaOgXU8QwnWFXnocSqGDqN+FfXDpDuTgD1rtfIlXaRVCSjhTls1059xX1cpVGm 6qO8ktzPyas8J5K6MF9JPYyHfzsw6AfCUTEW6DJlWEOf1zILNLEX3bgTBXJshutX OWbxy7/rS/YIWOKBVA31+GPNHqItpuXok/NoyfrmioWec/xtgplV/QFAUrm+iKcl LHF6D178fBqwFwWH3IgXA7WMp2NCo/NKcRMTaGmtah0gIsQHRJdwB83jSOb7clje 0CM3DiL0gbd8XSFzlT2zebuC8hS1peMyd0lsmTUTWR81l/EyokXSJw== Received: from iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta03.appoci.oracle.com [130.35.103.27]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 45d1m3kwq2-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Mon, 17 Mar 2025 21:15:22 +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 52HJPoXp027927; Mon, 17 Mar 2025 21:15:22 GMT Received: from nam11-bn8-obe.outbound.protection.outlook.com (mail-bn8nam11lp2168.outbound.protection.outlook.com [104.47.58.168]) by iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 45dxdcgg5y-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Mon, 17 Mar 2025 21:15:22 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=savNiw6xJ2qq2I7G/GcLv/8nTUo0fce6cdKKdjZpEqmfOcc6xTLNkFdQlw0RhAbV7DqArOsB3QzABPsnVzXS0QeKpBj2J4m3OG/PL8kI6gRXYTnG5wCbqmJc/YVD3I4A8bGr0lQZK/aQjxXKokpMky4vAtlGlF5d2EPmBd961aI4xbgwXt0kQdAdzRb1l/RlBZ7iAvFux/xAb5A38UcDD9FWI0c521OIkBtGKgcIC2SLV/4rMhApUc9i58OHq/8GJHzFXam8W1/lY/1KWh0oDrfcL/l5AAbTiE+GIh8l6Ftpr42A3+i/mLOP7yl1XYIN0wsn985lbBGwI2MqR6kytA== 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=6umxsCGfZk59c/SY4uSYmwZN5TVej+kNuNbhlwrvYrw=; b=pY7Rzzoas9BQ5VmbV7Sl/inQvSHU5iFyP7vyOvkKHRnOcf+M3Hylj0P8+MdalfKJAQl1bDWoQlOy3XKjFS+ChOgKqL1oUcSVT5sigX1H0nx9CJLOhS3kVA0xPyGccqD/ET4FlqUkVdSe8ZAb4jCjzsnywC5TlwgbWlERJGBgjTAYN/lURxuPoQfitxYHyP630UFiYdLlyrPXsk3v10j8B1oSuUv7lR5O8w0yQwCLLzyvtyG4+EpeNV7lT8nlgO/IVL/w9EG5Z76JyIceHDgqkZKESuFJK918uKyYI94iWi8gTKeGUoZ1VqHhvSo8f3vGjLnXpESiBL+jUoe5uyEF2g== 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=6umxsCGfZk59c/SY4uSYmwZN5TVej+kNuNbhlwrvYrw=; b=ZieSJ+BG0VII33CpOuuMZaLYTX6e1tq3ZKh6/+unS1lO+kynjbtoNY1Eu5cK/XRvYry+H/bGYNo4PsyHrokwEL5OflKrJ//kop016JJ0oq4KIMvJX4kiyb0FEX5y/zI0hCW8+9Htk2bWZG8x9XPN4aElVLk4bTUDqDNRSSZtViE= Received: from MN2PR10MB4112.namprd10.prod.outlook.com (2603:10b6:208:11e::33) by PH7PR10MB7105.namprd10.prod.outlook.com (2603:10b6:510:27f::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8534.33; Mon, 17 Mar 2025 21:15:20 +0000 Received: from MN2PR10MB4112.namprd10.prod.outlook.com ([fe80::3256:3c8c:73a9:5b9c]) by MN2PR10MB4112.namprd10.prod.outlook.com ([fe80::3256:3c8c:73a9:5b9c%4]) with mapi id 15.20.8534.031; Mon, 17 Mar 2025 21:15:20 +0000 From: Lorenzo Stoakes To: Andrew Morton Cc: Vlastimil Babka , Jann Horn , "Liam R . Howlett" , Suren Baghdasaryan , David Hildenbrand , Matthew Wilcox , Rik van Riel , linux-mm@kvack.org, linux-kernel@vger.kernel.org Subject: [PATCH 0/3] fix incorrectly disallowed anonymous VMA merges Date: Mon, 17 Mar 2025 21:15:02 +0000 Message-ID: X-Mailer: git-send-email 2.48.1 X-ClientProxiedBy: LO2P265CA0227.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:b::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_|PH7PR10MB7105:EE_ X-MS-Office365-Filtering-Correlation-Id: 2d9efd47-0b98-4921-ec15-08dd6598d2b6 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: AiwZZW0p6fdHPGcJQtJeaPAcUHQqtH+rsjbq86raL7/GGCzDe/PHHjhO4jNENrHjt6WrRyd5rYjz+m2E3/HD5jsFjrfpzdLnZKP7qOdcpv0lvSmkW3Dlt3AzPTFIe4Hk+xLKA2/8Mat00HH6rZKr585Dz/LfF9HNu1ztzqOBkFUQaB9VNjhx+2tzq4mPPj6SFbYOfXwwSYAN0bJ/d+78tHyxs+YDvbFy5W7fnYNYSLQz1nexfraQLCk1E6fkXFb12Z1r9JyEF+UrsariY+ubU8GzUj+AR/y35k23xG9OzuqXb0WSa5o75hohCepYNqrbMydI8JRb+13OeUq2Om6wSIYT2ad5t/B8GRVjiKoy0C/PRnaagspk7LCjyeewVKrqwLghIL75skjiZyddg8LJoGppVt8ovg6V8uuRWPQ29o4KdU1uoELKvY4nOSDrDDzrzEFWpME7qYmNe5566BAkXBKMISqv0msUuAnh7XxVH6fxrCTyYTBRdknaKnVcGMJQSHUVNV1d97fYV+6CzVs547M0KMAKxjAwJtX3sc8vVTjIWIbc9ymohnmjcbyL3FQEv5Kh3FXjNDM3nzqTWlL2FuE7Fi4OAyIGpz1oyL1mUJhpu/eIFZI+8a5liGrK2vpP6wpAyHEjJntOP4MVZe63SGQukbvW1zlPXEpP4ErPhBF+ID5rY7wcbxyRzRnx/2VugiBzc1/en2sJz8M1uQLoJHCAw14cqJKyIAw6qWxRge2ZgIKm1VaqUXWuOoubgE21DgbHQnpYlwmbxMbb8fAQBqXjr39PosAswxbeSUw0Y4+sCp8un4aculhCeIr18LVZCAm+0+RX5dzS4g04NNyTsdb6kX7q6oE3YxL/Gn5qoWN/nzqR0IKLnaPc0MluLfpVTYdtnML825f9FcNd70rszq+QyOy7FqbvtLcgX5e14aiWzW2GnVBip+Lsc7eGTICGUCxXHyNPCwGSFvmtYNTW3Q6thUIr9B5IT9995IupAcRix+PE7HxByfbUsTWn+ByD3Bq5P/jxWnteEwxdpNtNjuDjK3lVAS/qM3XVrULcuIHnEIO7710nti7U+SIRv2fWiBo8/P6as7f2ywBea0bXAv12+Uoq0R5vrL2NMFnuKhcjOMjsSk5FIA2VH9PKiijNt/2lxk3m0ZSrkoLeFByoZDKt2ZHxiLlrVvYVWsyOaEaNT1DdsP1C9uj1+fatnB9vgQ6NVhIMmKPp6i55K7RcxV66EowS88ecPQm+F37GCTtq88NAWbuKxnxSSmAu5rgIMOGBG+HR49fSY3emZd3ucCktqJd3KXqFq3zXQKcmxIbNJWmgqZ1crwAxgYLQPS2qrmHTr+rsG14/+yRl/nnSggWzgeqSMB66aaLNr5NhinQeYUYL6Tj/bUhCMeFnDuVJ 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)(376014)(1800799024)(366016);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: HPw6TficYkscGXizbqxDFvVTKJrdHbNZJIvXxkohUZ4zEPThEGVD8TDsTEiEHWMJ7t4QEBnPEFhF/Jg7iptF7VDxCWEgEWyL0ww/2qD1yCAAYnXyyXBMTKgesU0rHDo7d8NbOiJ3pdtc3A3v+xOjzDwIrbbaOXGYO+5AMiMKkhZvA56XdHMc0SxDs7ks/8V2O9wYYygj+uO93tQrxAINqzMiWDzUU7v815Zc8Uv/DkcppU7r9bONCWWrHy6ITTIEYUKFKfSbVTEaCIoIvCyJZ9FzEqSNfy07MA8rMMUf1MJupEhSE30kMhlzztZq69j9aFv7T95/YoX+Pp4kzQnRTNIT5qEFUVG/8VolJwpZQjiVxTkiD/HSwuWshVnKbm7+JGXPaYrmRe/nntw8sKaypICnSLlVB9Rq6C+W1jCuGeW58ruVuAlA35Jwx8tqeiXpH9K4EM4qdqpNG0qVXqkuLyR8TwDCA8MHpNsosjbldMJc6jWLZsS82oT5Aenr4vjr8b9EaJLi5XNQ9Dx82CSGxDwz06qZNEppNjAvn5zweBDjXbKw/ZK8of+P1W5rhHnzVawJMFWUpXbHlQBaDqvSVnx6VmV5NoI/CKB22DBBhNn1K7xw87k63lkVe6MnDytITzOmYnvGgVVmvYD8eGRIWM3i/ttIF03jdhpwY77THxV1vGah8Y6MgPSpAmXu2kzFIt11U6WufwUHhY3J+553aT7Icm5j6qVFHCNqMWPfHlgOf511OiBzlA/7DIum4IHddfdrjD+vlgqMIVmiOdfiKvGHlqq0qjPJ+1n33JzWq8iv3K0+AfSyIiIef1B0jVOSHzIWTcWhj9tjbc8iBmwIym0xqxoi/vdJRpUb0HAHWj9zo1SQhRQ5hHvS3Hl6mdvEipumeI5BbM0dzjfSuL6C3fLFcdHrRwFGlK+8qbX92JMKtdyqiSC5h/t3fB3jL8Y8mw/nCWQi3r2ED1D8Zsw7QllFlYJfJZA5Yr1jLrl7xv+MxoJqvDkFKHpPbE9o/svsl/veO39X0h/j1uWYVuxmBlmd0HnvukgxGb3lscpgZEu3KeUmOhOS3FXh/gjFMnOGr280Hmjo6TzwtBCrK020eu8H4aqD4m2qQOg6izbv7fcN1n7nioVt515EXvxqT6iHMNkE5cweDl4Dlqxl7ManMB/LUIrPGfDkmG3PGM02GWsEWWtNCJ6Nw1ohL6hPAN4XtXDv50uz7En2vtzmssBPQSFrhWJjzDhtRVg+zCBAmVEubynKiyrs2L8Q9grwLNDg1cweZi0gf3/xjl6t3y1Y6LAluRImdyUb8A2Al0FBddDziyAfbWXaqObkSsxHmY3nwVBO/7FA4enUywkd3QstIWFXuJJRbAvFKS8uQVOWEiRH+HbzF5waVv0dOUujI3QTNvxddaBT1/DiZZx/HpqUL6cOF2BojvUtotjBCaWyPrAxhCUvgiSOccXNcKthX40urz//QcF+C8gJXDATi9yiEfUX1ydJjRPWFZrUGBMp7p5sJa95h7w36u3sbjwOgwRhDuOd7Yzz6pAUoCu2S6zdSBudFKpfoouJC6VStP/0lAwIgjhZ+FQQucdQJAZkHoPyWvLWJruMZcmjOAk7cpF0iw== X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: QQfLVXAZWshu7qQUZHuHTRhTq0ge2eBaAAztOwbW5/ns6Tk9OjcSgFQGXQmx006s8RazsTLvjLT4hGX0/XLuPUGMMf5Fn/Gg9XzbFT2vhtr3H5bP/zoF+OOqpROCjGH/YNbyrJkRCLRQkGW7EUCYpGsuRPn+Lv2DYlT45JfXKEnAfn/1vSAZp+AVzwT66WtqkNDkzc6HRgSr+bSEHpxXjRvrX5Y9b1k1ti5k3VSOZruaYlHcTjq2LNMzwWp+MocvobMxyXKIuETMKjteQcaoD2G51S1Y3bACw/VWee5CVsQlb897nIpe9gDOUuUBQtULtlhdCnPAawzOpXwj0Kp+DUaOeJkMlZWFadc1f/skK0SViItPezdyJBusd5RqKMuv5//CCaJtmrp7OzVwTHM58I4JvAyx0Bpx82A35I26tdEZLnooFkuEstcGdliOnnlZnY1Vi4yTTTE7ROU7pic9yqh7UzgFhilXkvT/BIAaYrdz3v/eV2YMIdtKbEdviiry+OXpI7kYJFp0hJVCQ1WqP67xK/LnSnSst7aWwHkEhdZW9KHWwt21iNWfibsj/FgpBJb0XqP8u1h8syJLPkSk1A4epfuS4us1h5AyoTdDuYk= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 2d9efd47-0b98-4921-ec15-08dd6598d2b6 X-MS-Exchange-CrossTenant-AuthSource: MN2PR10MB4112.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Mar 2025 21:15:20.1927 (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: zqIrp3bw4xAcBx6QJf6iPA+vQMzmNklMCsc+hc4ba+45tCBTQ+oGAkHU6rzdL1/2k0NcqlSjhR+pua3c7WaXH5GxwGQWgClyNsBOS4SKrZU= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR10MB7105 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-17_09,2025-03-17_03,2024-11-22_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 phishscore=0 suspectscore=0 bulkscore=0 adultscore=0 malwarescore=0 mlxscore=0 spamscore=0 mlxlogscore=999 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2502280000 definitions=main-2503170153 X-Proofpoint-ORIG-GUID: BPq97quhAIifcbY9ImjiEEP3Dj7_OGbJ X-Proofpoint-GUID: BPq97quhAIifcbY9ImjiEEP3Dj7_OGbJ X-Rspam-User: X-Rspamd-Server: rspam10 X-Rspamd-Queue-Id: 1352D40006 X-Stat-Signature: w7porb5ditsr7otkp8bhwgd8ff7zc4tu X-HE-Tag: 1742246126-797157 X-HE-Meta: U2FsdGVkX1/LFo8T9y5adas6DDOH5HJU2kL4xsCYZnbPkfveMh3LB8jjhmmtVri7JIGTCBXmj0RoJB/ueEvv0V2kIIxIhpiZckQT603/Sf3OWZDkZpPx2nLxbiqqOhz/A1yNEvmFsnVNBPd/zBjW8jItotZymFCqgro09KWy6xBrHt6FokQVHCvHeWgDx9ChNwx1sjkM+Kf7IUJnsWk10KI37Azgci7p9oRxjUTSM+67hKKPFE+Nnbzy6jI3XWFVo0xcErY4Pku5CusFa8Vhv+fz3suWc8kguGAUe3+vVO6CPq5dqRYo8cxZSxom5YYwRF5IQ8aRl1WfydBBALgcbCSVcmSizLgrRtQIJSsZ/Lz3GX7xGVHVUe5NozofMwZWiiZB7eK3UGbx2UbQWf3t14m3Z6E8Zu+sdimjy+0+ZNyWjezZIaRT1SisHLWyptHJMrTkj2ttG/Ly6pPx8D09+LPLx4p7R8aBkRaosaERxUnhyJoHtxcP37D/aIhJUP23MFtE1Ao1vjPoFyGdp+yCNBwKOOJlBgLymyp09xm0VDPCnUJGhC55Ihiy2ezH+cKHCsWszvlhFc+WaTp9HDXM6+m7bCJBAWSnR040M+rJbpM2Vxjh7SaRbPHLc8bUBZ5SbbY7bx8Y3DO+aKoS2VZSsA2s1xht+N6NsCwAPjOopNm9PwUj5UgD4+9ckLw7BEveNM9CxmsDG4VqMHp2lhpZILsdX+FOYAUCzVyWI793FWEe810hbtPxtDLcEsP1GPKdlp+YQlJICgO7vLzjKyItQNfIuhw18p67G6Wut6BlUTcFePTa3p/N2WCTe3uFEQln5zE9JUb9JNBWtRsBiSkb3wrTgB7LoWureNtVxmQ8JEuWFccClcdZhHMoNe857OOM35yxWe8WSS5injtzr6DLdxE0NsOnK+gO7w0N92+ngwf2S9JRA6/tYScThCtMB/VyN0IQMmGxgFk6Wnw6rNd khYKoeoq QQdq3QIOnay8xqsfCEWlAdNcZMhXlhhCNLQrSAp/zPRtR2dkV80yfcs9ScncPdOa2x+TjZ53Vm3uQ04K8oxwU2UU80hJ12UQYv9tkAobuAw2XwoQGD755doD9urRHxdVEQWGjHqoTOSTFaXsu+pq0BSyffTA0CXvqlgEbevM5mUhOlGuV90kL76pQ4xmWNpt4qVe6IELzhSwnNLUEVgtVBBBXhQcC0d77Ww0EDcoP7fwzljw26sKkOxlAFK72V9xuGybZDQCdA+AR3HNzBL5ej2VtAK6j1CJyO9A6k05SOf7qnz3BMMIDt0qcdN6ZJsBaBVshzn7t89xAapslFSlhhHkJpR1KoIR9Wiw4xhm5lcPY9IK77vP9+MCbAbOZszmrvbshxN2lfk3oWxuHWQHvan/Au8Vw5rgb2RXVyqLVZWHMWCHtdANAWOo51nbjx259TCY7ThnE7gKJJbl8gfB0N04eYkF48/K09XmCpVCTbWNa6y4IMDQEf/tclHF4S6WFP1QRWmwulLPL90RbmOTR22+lLI0LIQwbZZ9Ldh/U2ioEIAacivbYHIJUZXQl1t4hf0aJPhILDEtzWe4lptUS1pFbdg== X-Bogosity: Ham, tests=bogofilter, spamicity=0.003085, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: It appears that we have been incorrectly rejecting merge cases for 15 years, apparently by mistake. Imagine a range of anonymous mapped momemory divided into two VMAs like this, with incompatible protection bits: RW RWX unfaulted faulted |-----------|-----------| | prev | vma | |-----------|-----------| mprotect(RW) Now imagine mprotect()'ing vma so it is RW. This appears as if it should merge, it does not. Neither does this case, again mprotect()'ing vma RW: RWX RW faulted unfaulted |-----------|-----------| | vma | next | |-----------|-----------| mprotect(RW) Nor: RW RWX RW unfaulted faulted unfaulted |-----------|-----------|-----------| | prev | vma | next | |-----------|-----------|-----------| mprotect(RW) What's going on here? In commit 5beb49305251 ("mm: change anon_vma linking to fix multi-process server scalability issue"), from 2010, Rik von Riel took careful care to account for these cases - commenting that '[this is] easily overlooked: when mprotect shifts the boundary, make sure the expanding vma has anon_vma set if the shrinking vma had, to cover any anon pages imported.' However, commit 965f55dea0e3 ("mmap: avoid merging cloned VMAs") introduced a little over a year later, appears to have accidentally disallowed this. By adjusting the is_mergeable_anon_vma() function to avoid lock contention across large trees of forked anon_vma's, this commit wrongly assumed the VMA being checked (the ostensible merge 'target') should be faulted, that is, have an anon_vma, and thus an anon_vma_chain list established, but only of length 1. This appears to have been unintentional, as disallowing empty target VMAs like this across the board makes no sense. We already have logic that accounts for this case, the same logic Rik introduced in 2010, now via dup_anon_vma() (and ultimately anon_vma_clone()), so there is no problem permitting this. This series fixes this mistake and also ensures that scalability concerns remain addressed by explicitly checking that whatever VMA is being merged has not been forked. A full set of self tests which reproduce the issue are provided, as well as updating userland VMA tests to assert this behaviour. The self tests additionally assert scalability concerns are addressed. Lorenzo Stoakes (3): mm/vma: fix incorrectly disallowed anonymous VMA merges tools/testing: add PROCMAP_QUERY helper functions in mm self tests tools/testing/selftests: assert that anon merge cases behave as expected mm/vma.c | 81 ++-- tools/testing/selftests/mm/.gitignore | 1 + tools/testing/selftests/mm/Makefile | 1 + tools/testing/selftests/mm/merge.c | 454 ++++++++++++++++++++++ tools/testing/selftests/mm/run_vmtests.sh | 2 + tools/testing/selftests/mm/vm_util.c | 62 +++ tools/testing/selftests/mm/vm_util.h | 21 + tools/testing/vma/vma.c | 100 ++--- 8 files changed, 652 insertions(+), 70 deletions(-) create mode 100644 tools/testing/selftests/mm/merge.c --- 2.48.1