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 7821DC8303C for ; Mon, 7 Jul 2025 13:32:08 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id E794D8D0003; Mon, 7 Jul 2025 09:32:07 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id E29C08D0002; Mon, 7 Jul 2025 09:32:07 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id CA3F28D0003; Mon, 7 Jul 2025 09:32:07 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id AFFC48D0002 for ; Mon, 7 Jul 2025 09:32:07 -0400 (EDT) Received: from smtpin12.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 86FE880129 for ; Mon, 7 Jul 2025 13:32:07 +0000 (UTC) X-FDA: 83637557094.12.32881EC Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) by imf19.hostedemail.com (Postfix) with ESMTP id 0C2641A000A for ; Mon, 7 Jul 2025 13:32:03 +0000 (UTC) Authentication-Results: imf19.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2025-04-25 header.b=qY8TGRQu; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b=l6ymaOqA; spf=pass (imf19.hostedemail.com: domain of lorenzo.stoakes@oracle.com designates 205.220.165.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-Authentication-Results: i=2; imf19.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2025-04-25 header.b=qY8TGRQu; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b=l6ymaOqA; spf=pass (imf19.hostedemail.com: domain of lorenzo.stoakes@oracle.com designates 205.220.165.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=1751895124; a=rsa-sha256; cv=pass; b=hy209YjlDJI63vWsnyZWyayHhZPw0nzIMhD0sco6nz0VY3SYvxfNEx679H+inMrXAGHbXM miTgC+pqhB9Un6323fh+sMT+iu2lLfuGOiCF512cBqrc6fEykVYUxxAKnZhB/VYend/9ww EpjBIj4zt7wo4jLytLjqOMJi6KQ7up8= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1751895124; 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=0D+akqNzAYSCUr0YloAK/6et6pCRDIe/01WgQcoRu4A=; b=BPaukxsiaA1uuC11kqGeD8/nVP9QmXy3UuD67X2PisouVi8zARTXiGkpq2+PueqNmXdbiE riy1eWsigSEI6pQcd1G/9Rk0A1zHmmjG8gtSWP0rD6+4Ips2QnA/UHVC7Eu8sRZTFOpSB+ cfUwyklk1sTk14ULH54Cajk2XPBLy+Q= 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 567BMk12027341; Mon, 7 Jul 2025 13:31:55 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=0D+akqNzAYSCUr0Ylo AK/6et6pCRDIe/01WgQcoRu4A=; b=qY8TGRQuosiwlDvLw93jy9xPIhm1ETx4eV RB3Wly77nqFQ0p06eVLTQozwtzlyT8GRheskTyAppZ2Ho+63biQ8McC6HkeIr5J/ 5okL/V9CCapCJMmVmZ5A8Un9kirXqPM08VExDKaZtxZfzKAi8HBN6PzRJukqGe1Q g7BxhYgvyRKNh/xCjEL/avsxyxuaxPCDrfk9oKPAbxfPG1xc8gDfSaVClVFsqcPH CB4Ebt68i0S3DmYbwjjxBk4mWh8KkqEB3JmytI0egTV2XjDDSLcCdLXJb1qshoca 1oGhi/P/f20EiRtgMd6q9Co8TzY5M+bu825adJB1irdvrm8EBL3w== Received: from iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta01.appoci.oracle.com [130.35.100.223]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 47rda188vm-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Mon, 07 Jul 2025 13:31:54 +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 567DAN5t027080; Mon, 7 Jul 2025 13:31:53 GMT Received: from nam10-mw2-obe.outbound.protection.outlook.com (mail-mw2nam10on2047.outbound.protection.outlook.com [40.107.94.47]) by iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 47ptg87vxy-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Mon, 07 Jul 2025 13:31:53 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=E6TKuLZw6I6PulIeqVmnu2mU+GpDgmyPbmMJYgfCsVpvkSE2Pu3NfA3TqcX/clasU/HQuzkgHXmoVequuza67rWftxrVA8YPolBunjrPKu3s1Akaa91hM88O6vLz1IIJNYjD9pX1ScEXZ6NGOuo7J67MN7Ko9Ddw+j058t+l0KMb+JdbNHAXWQ83YrJKxNRYDaL+Mx7m9cj6AOMqBg4djvaL4xRozPrqQoKtx8ct2BtcaZcBFWbEvuiWMdPu8UrE47zadEKMNXyQ2WPvt17twtAITdsRuG5/qGHXUWJLq+XzRjP7ZYbXR0VDPIji3xAvacQiz48AhyUnLLBAvh5VhA== 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=0D+akqNzAYSCUr0YloAK/6et6pCRDIe/01WgQcoRu4A=; b=YTNLqUBgsReFsRBJarAFr29hM22bZAwOtQgOt2sQP+BBNk/6HpgmZuSmt2ieuOJCG4jknNzqs1LHfvvIdWsYbv7tjLwtazyGQ6fc8baOAv3GnNCnv8gemCBpGmTEU2SAr67Egy6K+erXJYRpUcgNTvm0CqspIYJbVe6rEw4cyhpYyOg/DpdeBX8LIytXvYThk7sLiufu+B/7sVd9XR4In+70tZthXYp46UdegbtQiv2O0+f9um04HrBU74ISrzKiM30YFSaM0ejXzAUMxePGYFiQOf6iI8gimdD/yNdKx2iY7FTasA1ukjZNC8CrngMKEKKMkLUAPGf8YBxi9ry7sg== 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=0D+akqNzAYSCUr0YloAK/6et6pCRDIe/01WgQcoRu4A=; b=l6ymaOqAbPduxmaC4am5wIl3WAgPWaxHnLgvAVbmv/DvtyP8UB02HNRccNp8AoUJ/NBeAk2m69bhkLTcLVFzxpsyU5F57rsrOzAF7L6hoPUMCZpJDbjpY+9WekzibMHs9pIeVWwg0laOMMO/9TcsbYeBIxOgbNuwt/ROtBXIEbY= Received: from DM4PR10MB8218.namprd10.prod.outlook.com (2603:10b6:8:1cc::16) by PH0PR10MB4453.namprd10.prod.outlook.com (2603:10b6:510:37::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8901.26; Mon, 7 Jul 2025 13:31:50 +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.8901.024; Mon, 7 Jul 2025 13:31:50 +0000 Date: Mon, 7 Jul 2025 14:31:48 +0100 From: Lorenzo Stoakes To: Baolin Wang Cc: akpm@linux-foundation.org, hughd@google.com, david@redhat.com, ziy@nvidia.com, Liam.Howlett@oracle.com, npache@redhat.com, ryan.roberts@arm.com, dev.jain@arm.com, baohua@kernel.org, vbabka@suse.cz, rppt@kernel.org, surenb@google.com, mhocko@suse.com, linux-mm@kvack.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH v2] mm: fault in complete folios instead of individual pages for tmpfs Message-ID: <4d210475-d908-4851-97f4-bfbdf838e6f6@lucifer.local> References: <440940e78aeb7430c5cc8b6d2088ae98265b9809.1751599072.git.baolin.wang@linux.alibaba.com> Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <440940e78aeb7430c5cc8b6d2088ae98265b9809.1751599072.git.baolin.wang@linux.alibaba.com> X-ClientProxiedBy: LO2P123CA0098.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:139::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_|PH0PR10MB4453:EE_ X-MS-Office365-Filtering-Correlation-Id: 0e8ac933-5e2c-4c14-b565-08ddbd5aa127 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|1800799024|7416014|376014|7053199007; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?X9uqykshRO5wozTf+0P9LgsgB5Psu6VfQTc03iJL8tM+Qi+HbyQAUEHZIKjX?= =?us-ascii?Q?cZOyz0bhP9Q3h4o1w+gGj/gOQvwzy+++0/04T3Uh+969KADvKKrdgd4aMK2m?= =?us-ascii?Q?E6NiZmipd7NPYko0ykgelmvyVhyTJTmi4FRzreYkG6u9rzHHU5z2IFdHMemx?= =?us-ascii?Q?IqByR2U4pZBh5xRu1YNwOV5VDkZyw8Sqfuhnyox9IKKKQy/00Bh7HSVY0SV5?= =?us-ascii?Q?QiO1qfz/44HAh0xUiLwQo4v+KDqUpk9lGDcN9VMYer0PZDwN73EONT45KayH?= =?us-ascii?Q?/lyMqxd76KWUmkYIGFkXu4gJ5E3aLXdmmD0V1D/Zh7EY1odeK2Hl58ycY21r?= =?us-ascii?Q?ETRKGsPvvufIQSH3i468wON2L67syhlSF4wWU1GHU6L3j7tbEZI5t+P13+6f?= =?us-ascii?Q?mYUs3AwtyjHJKOaPo+3eaVG54miDKN4oDrV+MmMSGs7blqb+pPmrykAr83Un?= =?us-ascii?Q?jZ2tN/cRb/8XsAFZ/BZvJ915fKZBZY23DDgkVWRtqo7mZ0POK7TIvQZa17iC?= =?us-ascii?Q?ejaWaIaXU59jdKLBMS3rJMI1x1r83pIS/9Hc19joDg0VyP5EoX/9JDHVuAWl?= =?us-ascii?Q?Syz9Iuid3Kk5WCPFuQpB0MUxT4yAV/zc0TWw3ujdsoHazFDmkovv1OTyLsAz?= =?us-ascii?Q?fAabDthSqWVLfnj/s/oA21OrR3ZmgIuioV17abJdRAdsLBGO4ueU7qMes72c?= =?us-ascii?Q?WPrEFVQHy3nBCN52xO9btOhjAZ01IwJ2wOK9BHY3Q/VWzFcNI4fGaweD0MRt?= =?us-ascii?Q?CSliPo6ZTg7YlD0orFTOa1OC3TG9N32ytNmH4pcn2mucdruXeHv45gOEhJUl?= =?us-ascii?Q?4Ol0XwOdlmYcQHJ1vxTR9HQNV5AdFq8Jr4aXVax7gwG+V2zf99ajF23uL0Na?= =?us-ascii?Q?gjjjymV5QMf3t6IAp0sQxRT5FAIu+6dhXudAV6i270Dx83ZHvbOzlRsLxptB?= =?us-ascii?Q?8HzFSiUqXD38hJCDaTUCRPwo7ctkjx9rZezCUcKAc9bfJB5xlzdGFioA1RJV?= =?us-ascii?Q?89+ovYHydmYi9SdujfDgZoxzwk6z73+SWAXhSzlpkDT3LL4JTEkIQKj55bjU?= =?us-ascii?Q?qbncDL0WIBHGAjAoXq1mXtsHyK8J4DojFN+oeAjsdL9IuhguG+C9O7OS1qA5?= =?us-ascii?Q?8xfV/Bv/qJE7jUIvMjMO+OJBzDGKqn+CBAbI74xX+0+LWAg02NiojGn7c2nG?= =?us-ascii?Q?UAYaOypt+yAiGD3YwPJWcKuPi89rabNNXuj9kROtg18clr6fLT/tW16Q7SMX?= =?us-ascii?Q?zyaBMBHkfF1t8c2Ke1UF+Ej8/FOhITgJbfJbsmWFspea1XTEiyeSpJ1LT2On?= =?us-ascii?Q?aUhE15+yHcJHAe6FUr77B78Zcq50mIvmWmN1YULdg5SY6flOS353PLy4zZSp?= =?us-ascii?Q?ZGeEbyl0TwsSh+Z9upKC9KCfA1/a2y4CbDwyenMSTmTodLJvtov2c5kGtRR0?= =?us-ascii?Q?7gX0h4fFia0=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)(366016)(1800799024)(7416014)(376014)(7053199007);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?I+SrB8nLpS6amaob2E7zgY7aTXL0UBXF8w79BxD5rZsCvL2NxXG13SVOxjg2?= =?us-ascii?Q?Uyn/m6vSMkk3WMxgpj5smtr3HHlrV89MYm0iKXlddwDcTlcN5GpAsVfvkFOQ?= =?us-ascii?Q?fwlqG1W3Ex7bdpkU7WEIYMmqkF9X4tQAJZdqb7boDbfZlxCzXRGQS3h6IftE?= =?us-ascii?Q?mBwJLGdJq9owbtptzLd3DVANMxEmeK6Ic5IY2AAgGK88zFiwAGLy8r0V9BTT?= =?us-ascii?Q?uHyoqe+XfMqffjckCFh4cxPuZTVGVBy83i16DchQoYS6da3rNw8muNLFXWM6?= =?us-ascii?Q?95+qIGi8tnnNoZrlbNUHu2+PUyH/l42yd9kFrnQrXCrlgfA1mXhflpyXIA2W?= =?us-ascii?Q?VM12UX7HTOyAVOne9KWCXRJoujS811hDvPgEj9E7dTP2nctUWYicz8BnU5bD?= =?us-ascii?Q?C90s5T1LmkMB0Vbn7fg4WkZ6UXwdEEYyOKpf0o2o5rFT8MY9v6xcPOUffqtO?= =?us-ascii?Q?bJz8qR8G7dynlZNJw+zQ0wNf7aUFI88UyFhMzbfuhpOXsPp+HAewJYTYrMLK?= =?us-ascii?Q?kN0/nv7DeH0yYFWHoYUb2+/ruR5cACTGzOF17d8NJ5X+TqSjKmDBKNyQi16E?= =?us-ascii?Q?zFgUCeKUUBPIYZa2Tiup7U03erpOcFi206pePEA1uxkNtOa3CPXtrvqRsjMJ?= =?us-ascii?Q?2+it7KmYkajbvY6dErslNyqycY1HPxuVXJJKwKjZ/wx7I3rSz9QB0cjy6/mp?= =?us-ascii?Q?KFkwjND1QJ1KJ4Jt4TKfNG1ZeYiWOijtzTm/GlbrrQGhNqD00+OWRzr10QNu?= =?us-ascii?Q?jTpCIDmWDBmkw9yIQxeiNS/8BYNuH5ZXT1aG56JfH2gEwTwF0/Sd4j/f2kSu?= =?us-ascii?Q?tJJ/gXPhEgdeAC22wor/yiAtntZ/W/QluIsHSUO8SH/2X/XmyZeIZJd163Cv?= =?us-ascii?Q?M9UwL55xu5+UlgVoBOOl1gvbLhN4E4kPdae+GCNRvhy8+Rvp5y/Ur8E/nK3h?= =?us-ascii?Q?txJF9V3O5S1Bh9AVvsyF5hjPWek6iMGPEL4iOnxVppbdsBGDVJud4lpFDQte?= =?us-ascii?Q?U7aqXTIhkfzpFNQl3Z3PC0+Ughe0CPOV0za1KfMKst4j01mtXLPJb5e6mLyO?= =?us-ascii?Q?8VuLrsUUNE99/jV+ubxZlZTnFRwirU1VNzxmBT5+cLjrEqAvRvt9CNt07Fpy?= =?us-ascii?Q?lSOZwr80LRzqxGFdDav+coX/so/EHR9v+Hm7aXILkPk9Igbi6gr6/26WnOQx?= =?us-ascii?Q?hotvBKzahIw2rHkABulXUSz3Q/EkLiBdbqBVW5YPY20QZLvw9DgnJhz53PvT?= =?us-ascii?Q?ymPknCkFz/kiUXT9zlQimEE6KfHVf0zeExZTIV/dpceZVc23jhPrqur85WO7?= =?us-ascii?Q?bXSXXM6SaihxznXIV2Csli9HgRJVPKdr4q3zTRR4z+iHgjCYXC6O51rhmqp0?= =?us-ascii?Q?7prPNadDtZBWGgM8A4gT1WGZd2FFU2cqxG8ZIvbk5g2WChuzegIxTncuQaGE?= =?us-ascii?Q?EaM91IOhoQo1Di9Pb4z2awHTx/QBGP35Qh8odG5NV/zlJcJz5FO+TbUYbfUB?= =?us-ascii?Q?FTItzkMn9oI2TSPopkzyRCscr8dHC5BHv/TTRzVCJ9nsL5ZBaQ0LFd7i+75v?= =?us-ascii?Q?LuNVlmFMiC8HuWUMDR/34azxXWfSwo59Uoo1gvdpPFcvYhSgnqHhm1HoeL8f?= =?us-ascii?Q?1g=3D=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: y3Uje28aQQXWxN4HK4+CgzRsKaU6AOY3+hRfvx6Y9yEqDanYmUATR7TiCRjql/hK0CQnilqijCozuCuFPXtmiX4+cOMNYeUn8anqWQnpL2AHAp2fFHcsxNnDCyCoN3ztrSu5Tv4W3cCJdHcRJLzEhCoMnZmtK0kBocLP24a0j6CIh4I6gb60Jd1H80FYQUlbE+9iF0jEDAsG3fwvMNhNCuN2/XTSN/PgIOsCpQdsif6UrpHuWZN+2KXdES9Buv0bluJY446sQP1Fk10trU9oYX6hbbqTe4/TInH25pHZVT50lqBt8ndUnyDAm9oSDrucacgcFg23WonuoRxkyg9mHSSv10Um2PcsBLOjLSgsEsv0Le0fHZlz8Ey7Ldrdvo3ydGaN+GTfUe8DNwAV0LbrQm6IiqcDJNSfOW22JvXo8EgzrT6GplNUZxv3rKh1uOaEerjlH+KZOp6fp16ZvRa2hZsmrWl8jjx31AWOVNk4JHDJZeqNR41fsaNgssYWAPXb7kFDYO9fqd/brTyvicVKoYPjCnYVxle4GPQrMCzsNPgs90eZjm4jrSNfXSFcqy3XxD3oVYJ3zmOqSRU9ZTuceZAuSeD+UL+N2QHkQFxE+mg= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 0e8ac933-5e2c-4c14-b565-08ddbd5aa127 X-MS-Exchange-CrossTenant-AuthSource: DM4PR10MB8218.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jul 2025 13:31:50.5619 (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: nvE5lsCKxyVsZ0EMydUkLq7Q1wQF3sEvkg78OFcybSj3KiImFF4Bwj4qsJoaooOUDt9cbFWDlqBrT4BEMYwCXs1QqMxC/ogJ7ftsTv4eCEM= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR10MB4453 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1099,Hydra:6.1.7,FMLib:17.12.80.40 definitions=2025-07-07_03,2025-07-07_01,2025-03-28_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxscore=0 malwarescore=0 adultscore=0 suspectscore=0 phishscore=0 mlxlogscore=999 bulkscore=0 spamscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2505160000 definitions=main-2507070079 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUwNzA3MDA3OSBTYWx0ZWRfX2lfrvSltVn+H 43gZ3/fHYbLohSv8LGkNBzKR4v99C/NKYhxNSwYC2Nb6ZnXIEz6W+QhfI4pAUsH1e6oPCZPBlaZ QB/ifbZzFvmWP3pGMbqiOLtd2Gyanm/jPM+BVAWMzvk/iSnPmyAk6xulfUYwwNOJzOgheVapiea y+PhdK2EeOgIPcOp1vh0bHfZQlRL+S8ozXpAt26qSIgGV/8GccwCQ81BXjrMOyhChIOTkYzjp86 nn2Iz+vQ6T7IQYQQgcrj3nc7ZybtlIxpML+fdfm5ZjuPTbWAQ5sUdEE64Y2oaJ0jNxgO/BZIvur s6ca4TToSq8n2YdcbhEt/34THYeoTRijEH2cgLivi978i6/ckHiM/whCjNbLZId2VZER8JLDX8L DKZKHw3yhFDh6Rl5JJzEB37OhdgCAG5i3VsIvK5nkjNTfxt9dEUhoR1Hp86EV5YLD8Led13u X-Authority-Analysis: v=2.4 cv=QMNoRhLL c=1 sm=1 tr=0 ts=686bcc4a b=1 cx=c_pps a=zPCbziy225d3KhSqZt3L1A==:117 a=zPCbziy225d3KhSqZt3L1A==:17 a=6eWqkTHjU83fiwn7nKZWdM+Sl24=:19 a=lCpzRmAYbLLaTzLvsPZ7Mbvzbb8=:19 a=wKuvFiaSGQ0qltdbU6+NXLB8nM8=:19 a=Ol13hO9ccFRV9qXi2t6ftBPywas=:19 a=xqWC_Br6kY4A:10 a=kj9zAlcOel0A:10 a=Wb1JkmetP80A:10 a=GoEa3M9JfhUA:10 a=SRrdq9N9AAAA:8 a=yPCof4ZbAAAA:8 a=5vQ8xbWtzla9ZvRONr0A:9 a=CjuIK1q_8ugA:10 cc=ntf awl=host:12057 X-Proofpoint-GUID: XrjmBgbN2HhV-hclBtzmPdjeMfDujXjp X-Proofpoint-ORIG-GUID: XrjmBgbN2HhV-hclBtzmPdjeMfDujXjp X-Rspamd-Server: rspam01 X-Rspamd-Queue-Id: 0C2641A000A X-Stat-Signature: modaraypt6ts8yntjko8gyrgrzemhhos X-Rspam-User: X-HE-Tag: 1751895123-613421 X-HE-Meta: U2FsdGVkX1+bpQkn+bD4GOrRZoME+QtGEWXmtwKt6XOi6/UZ5Ly3knMvZeHEXILE4gJpHijAs8cvh3QcYeipRMMv+cQ2lyXlklDtUyDFbDbadxrhvM8V/OyaV0+NC3x+YnCR2lRzw9lSRq3+8ZMpEO80UY+mK9FfH47yVMmP6NKjQkDj4aYaRxZ/PczSxR/+tBJ3828FyafDH9Dh4fWbRSZ7KSjnPYN7T8bUsxMVsnH2WXgA1balOZTl2MPScKeqcocjenhqBw0ijADmUBNkPuD13x9fUnHNA9CAEnrwaKkJYnEEsuF39i627Pm5LWgDVkiRz+23/9w9En7FCm3x4i1NVAsdcZnhc4CegsJjmDLbdFcGqcYCHoGUfl06tCJg9vKspdPcXDdBjPAwN0fDlxqjwEfmIu+FE6Bzr96kn+GuWkdsjbh8EzF6luiqUM05PexDI8Afkr0iS1eLLsfeB7gAP71S45o4EjZEDOiImKHToBoh2W8zHpqir2FTkyN9MMVHGl7wiPC5UPmTyGbxUSWPstJgSg9WCFCkhWBuwomOL3E/SCn1vlOMQypNTgysYtKMlIavpIvG4RFDPtyySKaeFewoby7Iz7SWN5/rLrxxc2+X4M31kQ1grRVS88Zpb0dxCdB1O199KaI2hnJnYln5JVpVIDS62alQ+LdkV+52W3TkH/AVEnsVBVy+HeLGxp+KHXSM7dips5k6x/eFqD2HFXEgov6Ujh24ink+YnaIqVAU+5BFLyL3DvlkE65bxId2dWsfGEb4QSfadknoyjwVpRFeL7E7fp/13rNrNJ43KkYPTpwxoOgoTPJANkEYtFSaSEsOJgA+83p2jwy7XWvdnfPVGiWPPQR2lRtYQKCvm+u0EDTGmywSWhZN+17qhGjwil5dEIQIDZKGfg5PjhH0bV2qkBWSblHrZ2oDWuWLvfexyoiyzGblxjhTnMZwr66Q119ywl8xAWsKrmp ztppm3tQ TdFJOKXRLueHXlq8HDVF0GZSBTGmHQlVLd6u/eTFr9z3E4d71auVx0YF4WyJ9mIEVuZvLQo/zSS8PqMYgvXLssca7hr8vMd14Ny81D3uHzo77FXwqfl4KKsnX+wdC8h5NUzNk04SX9K8fKZD8HRlhfGRHGd3Gg+tHWzj4Ddu/hS1F2rTpVlj6EvoyOg+tku9mU9d0tcbNe8Eljbl9fH3D3+01BQXul3vlcH7AqECzzTBEXbKQ6eRIQ7sqBzhCEwwkQcjYSDBfluHfCA6biLt7c8svlwUJm50nGqHYGe0AM5b9ViFHkfte+gsGYhb5ODmehCXWAkMZFcf0FmsqayEgr1u1ZrhPX2IUsodPl0aRUw+V4bSanUg1Z2pMcCQHYT2LmPDiHWqtpWDAAeAYL/HEAChbxwhTjbKO8dPRrZgpAJpDv4DxIOhwXSB1WUyuKZ7teSNcIWotAjZHN1rGV7vTbN4/YmNPm7k0DfkZwBc5ZGiMa0BJnmHgyADDghYpdbnc8UNd+9zyLbcFKfR5UHJ5s0UTutyiNqoCFZSmImzKWAL/xAmBY62L9nwhjhO+eFYcjziU2j6ODndwJFDmWZu8v9x2wgHhaewJ2T8zoJUBz3Ex5pDkUVMLP9PSK18glRd6eqhX6rq8zqRAp18sLBSyLsXdLZemcRmg/4dnhpI1RDmzfDthUTgTYDJvebhvBn6o0GHq3yoLW+srVRNMn8Qg4zA1dmOj2LlQG2cu 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 Fri, Jul 04, 2025 at 11:19:26AM +0800, Baolin Wang wrote: > After commit acd7ccb284b8 ("mm: shmem: add large folio support for tmpfs"), > tmpfs can also support large folio allocation (not just PMD-sized large > folios). > > However, when accessing tmpfs via mmap(), although tmpfs supports large folios, > we still establish mappings at the base page granularity, which is unreasonable. > > We can map multiple consecutive pages of a tmpfs folios at once according to > the size of the large folio. On one hand, this can reduce the overhead of page > faults; on the other hand, it can leverage hardware architecture optimizations > to reduce TLB misses, such as contiguous PTEs on the ARM architecture. > > Moreover, tmpfs mount will use the 'huge=' option to control large folio > allocation explicitly. So it can be understood that the process's RSS statistics > might increase, and I think this will not cause any obvious effects for users. > > Performance test: > I created a 1G tmpfs file, populated with 64K large folios, and write-accessed it > sequentially via mmap(). I observed a significant performance improvement: > > Before the patch: > real 0m0.158s > user 0m0.008s > sys 0m0.150s > > After the patch: > real 0m0.021s > user 0m0.004s > sys 0m0.017s Wow! > > Signed-off-by: Baolin Wang Seems reasonable, if we explicitly support larger folios in tmpfs now as well as anon shmem (what a concept...) So, Reviewed-by: Lorenzo Stoakes > --- > Changes from v1: > - Drop the unnecessary IS_ALIGNED() check, per David. > - Update the commit message, per David. > --- > mm/memory.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/mm/memory.c b/mm/memory.c > index 0f9b32a20e5b..9944380e947d 100644 > --- a/mm/memory.c > +++ b/mm/memory.c > @@ -5383,10 +5383,10 @@ vm_fault_t finish_fault(struct vm_fault *vmf) > > /* > * Using per-page fault to maintain the uffd semantics, and same > - * approach also applies to non-anonymous-shmem faults to avoid > + * approach also applies to non shmem/tmpfs faults to avoid > * inflating the RSS of the process. > */ > - if (!vma_is_anon_shmem(vma) || unlikely(userfaultfd_armed(vma)) || > + if (!vma_is_shmem(vma) || unlikely(userfaultfd_armed(vma)) || > unlikely(needs_fallback)) { > nr_pages = 1; > } else if (nr_pages > 1) { > -- > 2.43.5 >