From patchwork Mon Mar 10 20:50:33 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Lorenzo Stoakes X-Patchwork-Id: 14010661 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 00044C282DE for ; Mon, 10 Mar 2025 20:51:32 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 5D28A280005; Mon, 10 Mar 2025 16:51:30 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 5825B280004; Mon, 10 Mar 2025 16:51:30 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 3D4BD280005; Mon, 10 Mar 2025 16:51:30 -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 21AA7280004 for ; Mon, 10 Mar 2025 16:51:30 -0400 (EDT) Received: from smtpin17.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id 9CF221CBA2A for ; Mon, 10 Mar 2025 20:51:31 +0000 (UTC) X-FDA: 83206837182.17.A6D538B Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) by imf08.hostedemail.com (Postfix) with ESMTP id D1CF9160006 for ; Mon, 10 Mar 2025 20:51:27 +0000 (UTC) Authentication-Results: imf08.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2023-11-20 header.b=hUGvpAag; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b="IE/EXdye"; arc=pass ("microsoft.com:s=arcselector10001:i=1"); dmarc=pass (policy=reject) header.from=oracle.com; spf=pass (imf08.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=1741639888; a=rsa-sha256; cv=pass; b=finMnlTFsY56OpkhuWFoijr2n8IXEu8dMJgH+HNu7nBqKSb+2u3B2FiBjn31NnpX1bDjbD 8gHYNBQn3J0vXVtolpIP+wlU1n/wEj54cdcZTYnE3S9iRlq85jGDiwxfduklMUKvU9TWOt PfD22eZcZyLD2VZPxYi1va/96k2K15w= ARC-Authentication-Results: i=2; imf08.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2023-11-20 header.b=hUGvpAag; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b="IE/EXdye"; arc=pass ("microsoft.com:s=arcselector10001:i=1"); dmarc=pass (policy=reject) header.from=oracle.com; spf=pass (imf08.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=1741639888; 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=USUmLJty6jCP4gZyVZDe6LID0/A6+yIWbo7ZqqeBKak=; b=EmT6dP+CfzKtj7dypRwrAuHV8KBha8ar56YNHGc8lWBkaGchHdoaVjhpjQshSNKdc8MfHZ gdZ1ClPoTMJ8eeMCl+WDXKeztsJA4Jxn3ZowpgOz/VcGBkV8c3vdWSUTg20/2wMIWhuCRI KeJAkNEdUMy3bubsh2SujP5SsJIMHwk= Received: from pps.filterd (m0246627.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 52AJtl8V015577; Mon, 10 Mar 2025 20:51:24 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=USUmLJty6jCP4gZy VZDe6LID0/A6+yIWbo7ZqqeBKak=; b=hUGvpAagmiZwu4YT+XRUhuyBfhhXjAAR zeifdGvwQ6CSbooFhAxlyuUxeO9xJk+E7Ekt+Z0dSwHPOLRMOwlOSpIJDPpIi4cp 6zwJKGcBr1Qi9sNyjpViOd6BerWbB2hb+oKvYWoCiF01cu8YDxE9fGyVxXnbCNeB Mzvf8+3qkmaRCL4BdzD08Q3VHNhLVtVJJCbZdFgicHIiKNKaRdMA1CV4/cW9J9Ne 3JktArXI0+UrndVAeKwIAjCuID713iPJXZRvLfpEMTYvi3JZ+pIAWno0xLIhC6AE 116MlMpbzJqAozcnvChoeC8gdn9l2BgNFsaris5+sVk6DFm5kraoHw== Received: from iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta01.appoci.oracle.com [130.35.100.223]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 458cg0ukdv-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Mon, 10 Mar 2025 20:51:23 +0000 (GMT) Received: from pps.filterd (iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (8.18.1.2/8.18.1.2) with ESMTP id 52AKH6gC021738; Mon, 10 Mar 2025 20:51:22 GMT Received: from nam11-bn8-obe.outbound.protection.outlook.com (mail-bn8nam11lp2176.outbound.protection.outlook.com [104.47.58.176]) by iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 458wmnm58y-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Mon, 10 Mar 2025 20:51:22 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=szpYbRxEGt/r7AbA2OWpfLf37iUdn5Kr6SaWmHVobBrJMWt/OIpf7W8N5tQedkiT5j6Fa9i2C0rzL0pA5rMj/+EmSxBwV2YTcWN0/DI9mjDlGBpDXT4hF9Z9Cefd649hY/L2zOVdnMJBmAcFDniB28wK5fsfG2TPWHKvd/iXKyMiT2vwVSFEx06vGatbCbY2k0QEZtPhqYgJn3ohNiJh2GuYegOqWB7usbSRWiokeqRD5C5dbMYVAkYg8mAVx6dI7eLcBn2PcRPXMv8/dmLVUA5Mc0zBMF0F0YJv5ad/VwhZOZzap0w48OZ7xWt1+46CQvjQPg/xpZy1jfaGjoGTvw== 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=USUmLJty6jCP4gZyVZDe6LID0/A6+yIWbo7ZqqeBKak=; b=UQp9QfLGZtTUL6UY96GJkfrGYdPq2/nqC4Rw2Bp7ANFR/S463evPY4jgv2O8vNMElJL33i/c4opNx0ZWR3fBrRVRbtW8DWLdkTtL/kMViN0hIMVUs1PJMp36vLj7L89nplcv7GEtuGn21wJEe7WA2uYMe7WPO9z45vE069/kCDUDiyxKLMUk6HxYjzwxVARKgsXPKTWMKoiW08nzykvNXeOaUcBO/N7zlUHByuZI1QLH4nCAkCx/G5FIuV0UqBpXhMUXM8pi7L+q6HVdghh1ihWRE1Zdu936NTb77ecdjeVPMnjwjKZSS7U6cBNvmMCRZKNSPMH1STKr1BeNDEKbhA== 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=USUmLJty6jCP4gZyVZDe6LID0/A6+yIWbo7ZqqeBKak=; b=IE/EXdyexoFCIclVQCIghypxRuZOVppct+EXN+ZDLMldAYmhrS0hPZumn8+WhmRVtPcw7MTfI42WrRdCNI4vkJ5P+QCmdbNZcEcnK8mmSSHlwRLsQJmdS6MwBhXmZkIzrVWUQLwMTT0uFkxoqs5vv6gYgQ9XPUTEWRarOACcu9E= Received: from MN2PR10MB4112.namprd10.prod.outlook.com (2603:10b6:208:11e::33) by DS7PR10MB7250.namprd10.prod.outlook.com (2603:10b6:8:e0::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8511.27; Mon, 10 Mar 2025 20:51:19 +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; Mon, 10 Mar 2025 20:51:19 +0000 From: Lorenzo Stoakes To: Andrew Morton Cc: "Liam R . Howlett" , Vlastimil Babka , Jann Horn , linux-mm@kvack.org, linux-kernel@vger.kernel.org, Harry Yoo , Yosry Ahmed , Oliver Sang Subject: [PATCH v3 0/7] refactor mremap and fix bug Date: Mon, 10 Mar 2025 20:50:33 +0000 Message-ID: X-Mailer: git-send-email 2.48.1 X-ClientProxiedBy: LO4P302CA0007.GBRP302.PROD.OUTLOOK.COM (2603:10a6:600:2c2::14) To MN2PR10MB4112.namprd10.prod.outlook.com (2603:10b6:208:11e::33) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: MN2PR10MB4112:EE_|DS7PR10MB7250:EE_ X-MS-Office365-Filtering-Correlation-Id: 38cf8300-c263-4e2e-c926-08dd60154f2f 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: MM4EWekaXLZBangvgR2fTcjLcNXBTfZPKLe7/MOViFK5MUlYFQOopRL3mxSZwGe9H0mBPlSlYyd0BuH7phm+nJkv+KkhrOeny39YJKJP2iD+qrI32dccuvtSpts86rooQKZpxGz1JwSMwkMJOrC/WaPTdx3/C+M3m3IgNeWoGce60wt0/NMUFugvPyd8Z+W93wxvykjtmgGDbCTrepLRO7rXrTBhYZNnqQTQWsieMxjFJL3K0wdWST5Sb76npRg6OscTtTfAxkPv/lVs39PLx1XiwNbLkG9Hx/6MfDM6tee8bqe7BPk8g0aeAP4wVAyI6SG+8nuQNyr4z7/zuAwpcim4xNBRwF8Ac9nssB4upxlLY+P+x0mlCMfrWenJzmwrG1HRbQGRIen1nG4atP7y4xmkkUMfNikb5Z8sW3mxyPtvHOSRCpTzeILTIsboQ9FpXqn1IckDgUJ/iQ7o3uzzq87Oi5EGRYcgRv0qEaAL2EWsUVq0OPYh7vqc2waEupxVbs//58/t7gx8xLi6Av/P1f4MRYijjNCkogFT34kDzWKRhoIfPqD8RYcjgBWMc4RgbmAB+vLb+T5IJ2R8WoTz+5ZDR9OIHgGeKnNZXdnI/FmCa+yqdyarH/h8qCmiJduG+12QNJSHVfncgiPvrl/+vOIN8o9ehFiWiexd/OBvbL99Vt2W5zrSyBZ5r08VBCmkijrCOulVYXxGH+UjV9GKV1n0qS0fTUGizGK6jCRwTwC9s42nuwL/QXjf7uoA2H1sh+Bf0qkI62K/HkL9RQUakdvCqCNzaYxDL262eXyEsTfKNpUSRLHrj5acZ/Nw7q7XPFzEwuixNAWEX9I1z4kgLuBJufdFwSCX5Y2kCAZUhnaWOo0IQDPCr0JEp7EcZ/v7t4SVoZDcllGXbgm33vTvJQDuH01B5ejyEPIEvXENNomrDN4XxfbsEZwRxuvtH0gFZWCR9qx6j4cyKoqV6EErf2qqlGAfoliH824hyRU4U8b9WqHiIzJh76Iomi8BMs6Hm9FA2MA2ZGGNXXytQAmWDBRjb/B0OpS5hEypJO7D30v7D9UkXJEP3hxokwnov0aNCzLy32eyN9kGeQrXiuOQfqr7i3V6mO3h70uM0GLHpaizqwTiOZ8SlblOIfWMDTX9vcYSQMSQhf+zdoETxaOnkKEE0tDcdU3MCp3F/QWsGpDzMUR42vDpkh+UAIJz1DWZTd7DLQbzUjpO9Fpkdj58iX0ZvOkrS/+DCdsRWMFAFFy0HoQptZy/0DMcjpeXhtGCJchSUjr5BccXcdFoAaNp/ieYm4q2eLuHQUiI12eTPDqI9wyTzt69JnxVw6mnho56oz8UYnxYNYc/rK+8M87D1sKHT+madhdQsvAzoucAYrntzaX0eaUJlGpTMnS9q8K2Mju0p5G1WIEMCC7fj1sIGA== 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: F1I8YzjPgY9XLMY108ie8MmXhH7yduLU5Km4BEXwaekFWv2fg16nG9Oa//0oQIQbXf3d9rqDbaZyJgK9jqcdNTO7wwSJZwUvBMFvSbZsq1Sev3HJ+87z3iOgl/29C02+yqrZ8sER58Doo/+cgwxcdUXTtrm+1D2dypd1bkZ6fAbdnU1mZR39+JVhRL+h1C9XVBCi5EGkQNNoMPumQsDHvEE3lw5Fb21zDPXSuoH0GAi+VGlKU0KFwS1fCYGmhv2FTLUZWvYALCoIE+G+owq7Uim22j453rCbWAGfrKX6njwxuQJizfBonaOVZv6iAUTzdmN0V9rE08h/2j4Jfbb2Lxbf6sf5ebELdUA3cuN4IIS0XImzJs9sd8PFGtSSbx2wSma89kAWj3ITBoOdVcNixI4ZH75iD92/5CUqAwmj+65WaDjW3tTX11sfAsU44jYKeUoKur/lr33JhOCtajkaCS6YVE411WuaS8nwuHHjS6pIttJvoB9ArdSC0dvvQifHQQ5TzQjA9bqiV1nUvSKqHlXleY9cSrKX8/MYw09VRoSinn1zg5YEH5E2rLdCXxrqQJDWVRUpkMMfNa7s6zxrjAwqa+82zo8jzhqhyO30kQt99OvAtYfwJHRTYlK4fgoCR/JYSwsfvOqvRr/KHBRbfJ2/ZXekmwScgKjIzJo4J/jL/CF5PRGk+UAnPZko4Fks+00fJ7NvL9UituTd+Kxss/nh8TVZaT0qpNWs1RJ/neo6vLJMnKlGjjwV0tv8FYYaOvNe52fwRGxb/9xFYyQviKSvaF9UsZHGEqBr0pIem3GxQptFvNwYvEY+dU3edOVJRGhYf+sKsHKqmTA1Hiab8llDAclS1KuDWwh+A2Z61x8yRMy0KA1aNBZcZnb0jNizJC1xcQgojMfXWd9R05vOnxYeQNWUXZ01pHhWfVuwjt+ujWMB84f3M1b4b5H/mtRvIL3cgr2nQMB7E528Cw/4JUpShSt4YXEYrMGmt7uk2GV4rTQl4r+Fv+nnOQYYdtd51puChNoNowteotOz5OrXjBKgSgFQrw9S8ME7YBlMfB/llGWY2aNV7p0Bp/0G3bWQd2AxedZ6nyyPZk9eTAyrNJyyr6OIW851ZIJ3VBmHLWKTnhc1nmkFT5Jb/whhnfumV5ISFXgzZoXAVXCfHjSFethM6PpXW0X/MIUZdc299nNOZ7oT+ezYtX7BIAdpOaGU3HRYOhDOwpBbSUX6e+0OCBIbURY1gliRd5HuBJFshg6dIM+sZ+ejbty69tAdhSUk6NUXIno1RVprcHLTl1JK1IYCNiie2sBs7H0ED16/KEsqyW2DGISrR8uLVAKs6nWMXOG6umTKskWFNpazgOJkkdVq3MbVeFS0fPULDFhIMbw4lf94ZwhfcSTgN8DzFq6et9rhXF/ta/B4bwRwV4rHUgOcU6bh17uArlB/7CJ4/irdpsHO/mrfvFnJQW9XUrVC1n0pP8Yqg1FengfhYMl6HLn77wuactLAOlK7tMDW2Ab13xC2tBDu0pt9nNlGFDzwe/KvEDc2zUftNB1qlrrcDKFhJubNkkMhag0WtP4Y7tBkvxs9XOSUNB3zFSMj6it09/qWVNGrEdORr/qZtbFq4w== X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: aQLBTHQKKPxrP+7Mg5Q3tKl3cYzoqTNCEpR3E++Kvh7Hz72N/ngFRo+Pruusk5SM4CmXWA5ZNTdnnp0ske7OK3w/eq9WQdwkt/Se7XpNjVZuWfzJOrN9nhTCJ7LG6nKwBmcoQrQPMfxjHenz0FX4wcKMEfTYMeuWBrfBnGf9HogoJBqnLeQtgFHoeqaMvdxXGBvrEmVJLkYaqkwLXQuDLBh4LiklXXy5qDIHSUMns8d0jN70/iV2Eg/SpBgnn5E16YH3uYeu40CQaceMO2uqMPUDU6SbVfTyBTKxCpaxnSoeiaqJIFAR7i/sWJixsrfcAr2akrAn2ulj6rp92piEpCi45JGkkqhvOA9E6mCfMpccZ7z+6TptzP9sqTCAewrp4GIcvAOmUdzJZqprHGcs4Xb1mOL6cTkHBa0M54c6OBossJqFI3lRuBCLAD0Vafh8q27/CAScBL9xnMmZlXkQSMee773bGHenXQwSXkdjux0uL45f54ULO8s3iSQVytwMbgUJ2o/Sk8AeKsZirJboSUeWUSFt8+eEmQFWJHEbkD0UBhrWRA4U4TFfCAI7iN0zSpJxyOumcYfRijrDyWx/O7ewcHYmXdScDTIXL3Cszk8= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 38cf8300-c263-4e2e-c926-08dd60154f2f X-MS-Exchange-CrossTenant-AuthSource: MN2PR10MB4112.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Mar 2025 20:51:19.7047 (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: PTfAS7ibZeEUrZeWiX3bzLINzLrGVCQcXNXX7L8qQ8W+SzMyiutm90onbABpba1qG2Wzc5YscZL6jqaV4JPHgipQlGnqAYblX3jxMkkD5s0= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR10MB7250 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-10_08,2025-03-07_03,2024-11-22_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxscore=0 spamscore=0 adultscore=0 malwarescore=0 phishscore=0 mlxlogscore=999 bulkscore=0 suspectscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2502100000 definitions=main-2503100159 X-Proofpoint-GUID: WgLNy5pXbP3u9eoTkcctskSKb-7L9mRH X-Proofpoint-ORIG-GUID: WgLNy5pXbP3u9eoTkcctskSKb-7L9mRH X-Rspamd-Queue-Id: D1CF9160006 X-Rspamd-Server: rspam11 X-Stat-Signature: 6fsp9sq6my36rznzz3hk3dpmrft87h8p X-Rspam-User: X-HE-Tag: 1741639887-607633 X-HE-Meta: U2FsdGVkX1+5VWQ7jrvDSciirL4oRD8aVnhPqhTWQ5dMLkV/P+t1TSmGiDBLJmqgu3XIDqqL/xrV+eslEcM4KsAvHo5MJLbeUeA5fxjZRGq10ekFAGi5VJWLRjOpnrc3QTDXz2Gug9KWa5F8897mVEqgIc9Z6UH4N2y7SYy/PiIkWIo/qjX4bUMRBRF8q0hwnAqhUcAd2Tm0RTJNrZxkD/iPnqMRn14l/141m4pw2z44XsSVatCFXnA6qGUgdDtUJ+oHNv8uDGfzDSenEwBvP4q+4J15mNG4NqNHrneDutFrs2UwubvW90SWyvr5CKqh0E32AaIf9ySFNRap1pqwOtYxghNTgtXU18554WGZlIsh4vMg2jgEMKYhNj0X4uzXdmnGa6ITA29Shw6MWvspWZ8zJCTD86PEhANhf5J2yxqyiAc/2Y3Ysokd7QHMSr/Y3+4B3+BRgIj9HfGDOJVXK7OckIZHkT2AAldGLTKJHJhYrBysvVEvycMQECE5b4O3KomNLBeqqVV5wSkJJGT7tiLRgyRKZagHbKga8MnirfdpYCA4w6fy/AQTB8IzAiiGfxcxwjc27CNhBrpJrP8H6q468hZsv51myZGiWw3xJQlzPvHAGA6k5zFb/WY9YeuPxdh20T9fpyiG9DWfvFjHc3R5edunNfk0iBVFct+fnG2RvPCfGZH/Q39qtPGgT8Nsz6M2yBGOZj1fTyV+6BSz+bwzk82tfaXwbLZu4oqKIo2SCEL7cojKGLT3zkodBezfChjNQWMY2c+kSFXIqHgtP06rm469q2nKrsVCu4Qd7DHXJJKHYvWujiQBw1b4tj6VPOb7xHDSrfv+3H0D0Sq3R7TrKuEQnNx5dKXqdpHed0fMypSCiwHwCmdQd5p98FPqoouzBWh35KsoRAXbV4R3/QE94XxJ7v+R6osZFGC45SHePE69Mh4eiZn9CXSUJf2n9kFQoOquu3sxoOrRMd+ 31rMFNho N20NxAF7GAvWGLp0JQAKHVjoV+HZkEXxcI9p4ZCtSpH47T/t2JZJXTkifuRhVGFJovA3mVKPCXgzoJJ/jR2yxv2ZaV+jML0B8mg/gIKg/U/dzRrl8KzZ/TQw+AUBjfJqHKH7lYzC7ObVwPIAvsmKbgbmEbunL/belkag2hKbFseY82oke7wANBdPF0OZZpbGbmMg57oMVC1npoU7KAowE6nxylPH0o7NIdZLkTkqcxWX7itAz2ZGObiL4FGkO5JLqKWmWMeKK/grZ/e352bQTi17ca51ZZRk1dUP7i/YbEvgHBendd+uaFXtMgDIsMmtzoTwSDer0Cow5yvSkyOjuSVkDZXzgd+3KfYqmhDDLy+2rtWmX3q/Br7toXLgs53fPbgFN7tTvrgwxSjDl81cSf+BgghJaL/xdn0zYtOHMJpaUMWTIcauK8AVG7lIEkW6QJ6mvdmznebpJICGRjm4krObs0xRxT5uYl+X5z+Zbuh4A77yxkXpG1KlijWSFYE8JETHVUPf3LRYlhTBnwJOEtBf0WBDFdEsY269OhBuniDteNS7JBrRls6PqaAMfVwjvRTMiTPAbWHt8F9F8esBCJzWkPhDqj3X2n6pt9zJxYIZNw4UxbbvpqTE7VlSKn6MKbUcF X-Bogosity: Ham, tests=bogofilter, spamicity=0.000010, 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 existing mremap() logic has grown organically over a very long period of time, resulting in code that is in many parts, very difficult to follow and full of subtleties and sources of confusion. In addition, it is difficult to thread state through the operation correctly, as function arguments have expanded, some parameters are expected to be temporarily altered during the operation, others are intended to remain static and some can be overridden. This series completely refactors the mremap implementation, sensibly separating functions, adding comments to explain the more subtle aspects of the implementation and making use of small structs to thread state through everything. The reason for doing so is to lay the groundwork for planned future changes to the mremap logic, changes which require the ability to easily pass around state. Additionally, it would be unhelpful to add yet more logic to code that is already difficult to follow without first refactoring it like this. The first patch in this series additionally fixes a bug when a VMA with start address zero is partially remapped. Tested on real hardware under heavy workload and all self tests are passing. v3: * Propagate tags (thanks Vlastimil et al.!) * Fix issue reported by test bot/trinity where, for length 0 input mappings of a VMA mapped entirely onto itself, vma_lookup() may consequently fail. * Fixed incomplete sentence in comment as per Vlastimil. * Reworded comment in internal.h around pagetable_move_control as per Vlastimil. * Reworded reference to page table boundary for clarity as per Vlastimil. * Dropped misleading reference to old_end in 6/7 as per Vlastimil. * Improved should_take_rmap_locks() as per Vlastimil. v2: * Folded Andrew's fix for move_huge_pud() stub that I missed in v1. * Folded Andrew's fix for err initialisation in prep_move_vma() that I missed in v1. * Propagated tags (thanks everyone!) * Aligned comments vertically as per Liam, tidied them up a bit. * Renamed mremap_operation to mremap_type for consistency. * Added MREMAP_INVALID as default mremap operation state, and set on initialisation as per Liam. * Renamed 'locked' to 'mlocked' whenever referring to mlock state as per Liam. * Dropped unnecessary vrm_set_remap_type() function as per Liam. * Corrected redundant comment about iterator invalidation as per Liam. * Corrected confusing vertical alignment on may_expand_vm() invocation as per Liam. https://lore.kernel.org/all/cover.1741256580.git.lorenzo.stoakes@oracle.com/ v1: https://lore.kernel.org/all/cover.1740911247.git.lorenzo.stoakes@oracle.com/ Lorenzo Stoakes (7): mm/mremap: correctly handle partial mremap() of VMA starting at 0 mm/mremap: refactor mremap() system call implementation mm/mremap: introduce and use vma_remap_struct threaded state mm/mremap: initial refactor of move_vma() mm/mremap: complete refactor of move_vma() mm/mremap: refactor move_page_tables(), abstracting state mm/mremap: thread state through move page table operation mm/internal.h | 46 +- mm/mmap.c | 5 +- mm/mremap.c | 1448 +++++++++++++++++++++++++++++++++---------------- 3 files changed, 1037 insertions(+), 462 deletions(-) --- 2.48.1