From nobody Sun Apr 5 16:28:55 2026 Received: from CH1PR05CU001.outbound.protection.outlook.com (mail-northcentralusazon11010065.outbound.protection.outlook.com [52.101.193.65]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 5F67C32BF4B; Mon, 23 Mar 2026 19:06:57 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.193.65 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774292818; cv=fail; b=SoVJ16LiUfNRYRtTNYXxU2HT2ONNlWSy9tTG/dIfdEuV6o1+F54383rhq0AnorJqtTnr0O4duS3/KePwKlwJTge6/hEBxyjjBagkQ2jedprtxVdYIGv6Yuo+e2+YkMyX8z5M/w8T67D0umMhDfH1NzgC/QT4BRyRrRgw5di0BCo= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774292818; c=relaxed/simple; bh=2ZK+I1QUNlvdXZ+KuPfOpRDbCFlsmezOhD8RTWnqbPU=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=GhVs8KQiXex8wlcjN1QW13LipvdpS5EBEbkbj2ejuRaMX7YstY7PG0J2Tdoku6GEfT1X96lkTFizoX6wwyuGOYaFjVUiq+SlZjRH6sWVuzq9XfZTpQZTlWcFtU0HOilKoEcy/VPX7XuxCiUaZhQPWycy/WnGNj77xzsi/YSr57Y= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com; spf=fail smtp.mailfrom=nvidia.com; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b=Vvz6Sz3M; arc=fail smtp.client-ip=52.101.193.65 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com Authentication-Results: smtp.subspace.kernel.org; spf=fail smtp.mailfrom=nvidia.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b="Vvz6Sz3M" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=yt7yUuePZi975Knw3jCXWzJ4p19r62AGxGYlZYj3ZNvwRrW4K81RMILWtKV0pBcEo6d/vIyzkSjsFo97drB54pB9uKCjIJwcspzoyAofyylunuB3XG3fehHpcwi4tbQEfEiV1COimoBhVNLnTW/l0wXHt2g/I7Dr/okdUYOIVFNkb8HwKnp9N0/3Ru64oVhTZlhXk1bys9/07y3QfZMDgMCytTia5VfuwPfDCinOCq1X7bQrcAogq8kWNOk++A8rdDueE4R+OtUmFQEHgWIysmi/0kHHt4cfTBmO7l9cl/ttgZ0uBoLe6PbHoGZrtglbueFUeeXMVL3p4KW87gNcGg== 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=IHrWTxcvcz/ah0eCjmkygDNgSOCoI0wu2JxMZZ29qB4=; b=tN+ffwmLAYYNiOqU89EJki+BggLqLStiXNUHFxRhpcPWztc+G71tXnhdf9OeSMBj1d7i8GDDwM+c+RtoF2G9qzBv6LHj20N6RLPvsf2Z9gw38NDERHlztmrjxmc/MbOedXNtBQ6C4kCwB2wpBLxIAVyW0GUtgih8J3zRxPl/4XOfjYDzm92rwoWfG4C+F5HxN27L8uxfZ0/9ZyG7000aggjXf6e+7ZEqnOetWFp4kfNnjNU9jFsvg1BERmb2hhwBvzrNQf6DEsuGAXPvEfREz7UqJjw6eQLkL/eZEsug2UZP+z+RnFAN5fUN+v9wRXSZ/0dC8UeTfVh/vVyg+TWLiA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=IHrWTxcvcz/ah0eCjmkygDNgSOCoI0wu2JxMZZ29qB4=; b=Vvz6Sz3MQdoz8Rmg4hcAQ/XPOOG/0A4FiSt+zpWYjiIwV7b8WLWl3arNXpPm7/sK2BOnOTP+yTOWPrzt824EWyqux1tMdxbd49vqti9PYi4MK5nOlDinz0eC8PhrsxPnDGFo0OUji1douXjwjjJq4JYXksIkKfwiNibri8LtOr/7nocveV0EEwSzX1ZOTgtBl/BbSrR1gXL42fckrjhZ937wqN+AVHHhX/WP02Da2mZnit3/3OctFXOIF9xY/EfYfu5wbKNQX7sC7mo6Lop2SFT7jZJMtN3aijbmq2+PjwmoCraGGWUqNNpmA04SBV00sV4ukSbuvR8W3bLNiRcvKA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; Received: from DS7PR12MB9473.namprd12.prod.outlook.com (2603:10b6:8:252::5) by SN7PR12MB6813.namprd12.prod.outlook.com (2603:10b6:806:267::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9745.20; Mon, 23 Mar 2026 19:06:51 +0000 Received: from DS7PR12MB9473.namprd12.prod.outlook.com ([fe80::f01d:73d2:2dda:c7b2]) by DS7PR12MB9473.namprd12.prod.outlook.com ([fe80::f01d:73d2:2dda:c7b2%4]) with mapi id 15.20.9745.007; Mon, 23 Mar 2026 19:06:50 +0000 From: Zi Yan To: "Matthew Wilcox (Oracle)" , Song Liu Cc: Chris Mason , David Sterba , Alexander Viro , Christian Brauner , Jan Kara , Andrew Morton , David Hildenbrand , Lorenzo Stoakes , Zi Yan , Baolin Wang , "Liam R. Howlett" , Nico Pache , Ryan Roberts , Dev Jain , Barry Song , Lance Yang , Vlastimil Babka , Mike Rapoport , Suren Baghdasaryan , Michal Hocko , Shuah Khan , linux-btrfs@vger.kernel.org, linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org, linux-mm@kvack.org, linux-kselftest@vger.kernel.org Subject: [RFC PATCH 01/11] mm: remove READ_ONLY_THP_FOR_FS Kconfig option Date: Mon, 23 Mar 2026 15:06:34 -0400 Message-ID: <20260323190644.1714379-2-ziy@nvidia.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260323190644.1714379-1-ziy@nvidia.com> References: <20260323190644.1714379-1-ziy@nvidia.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: BLAPR03CA0087.namprd03.prod.outlook.com (2603:10b6:208:329::32) To DS7PR12MB9473.namprd12.prod.outlook.com (2603:10b6:8:252::5) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DS7PR12MB9473:EE_|SN7PR12MB6813:EE_ X-MS-Office365-Filtering-Correlation-Id: 8bced937-01a7-48f2-ee78-08de890f563c X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|7416014|376014|1800799024|366016|22082099003|18002099003|56012099003; X-Microsoft-Antispam-Message-Info: mNX5bsjlQV20gxM+S+LJ+jgUE0d1Ym+GGujM+YBWTPv24IKitHjzmWTpRTBcSkeHHlzG3LKIw6LBrGiNcllMiXbo7Hg6oPbim9JrDro2dEOSjtTJeIU0LtMXJf+tstx4Fl8MvfTo5dsXg0f0Bu+Rv8vKStvH/o02a5kASb5erDvUiqTbKQqMvr5WONk1GDwLQOttSc+KFPCCIuQGvBeJH8PNeL/KC6QYSf5ZcwDJXQ/AKHY3K6vUS7c8jeFe6lXsfbCFs4K8IW3sd7G8aAdYoFuIK0nSGYfJmoFHG/w6YczjZMUWmSEDUShJWCqqcxb0Sq8jm9e2J/8+GnJIxQuL0mVFivaiFpc60mNipNTuEwQNycP1yMtDFVgDpM0ci/E5baMKgo5dQVx2NHwYiDdAbUDz1+pjXFv8J7bh/jghcW/F0y/ciM+UP5xf8HDMW3d2TDjoxstyiU/dOGJkp8TOPwc3oMSvS79RS7Krd8DFEuhRFUMb9bGHuo9T/Qpr+67aNwswzE4RxRXXod/Ywn0EFy2syr2Q/nsbquB30+7+bQSzq7WQHRteMfyVvulyuljorUR3GD4cLGW+SoE5eYp7MezefEQT1jUVl5YcBVmwNwlJTC5LjuLzersRBxV5SUoaZUEXdMFt+FgGtr3fz4GGfU8h9EiUvB9pW9L0ew6fYruFfrd+oJzaw015CQ830EA1w5tWi/ovfSNfSZ3/9WWwRaMNrp0/zlcUvB9Z9+LtJwg= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR12MB9473.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(7416014)(376014)(1800799024)(366016)(22082099003)(18002099003)(56012099003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?1G2L8E3bZ2u73mw78riuUfO9OUJNdxWJD+4Kk3+t+y9Z+fEUJtz+C3F52PJ2?= =?us-ascii?Q?5QuSK2c2KkFkhrtwiYmsCQcrj02QfMCaDE3r9a7NchUt+3DQ8PJ+ot/MyxF6?= =?us-ascii?Q?DWVW1450jgDfKw4vrCBXjgD3ItEamrIhmDo1ZKs3PJZV66m50Ap3Q3DvdCKM?= =?us-ascii?Q?oiEk41xd4oaBuu8EQEoqDUUlUTgg6NWQVk5pRd851y4moJqQ5zcjWXdzq3bC?= =?us-ascii?Q?dPmC9m36HrsWour+bQ3yIg9FOpmHt9PwB/d6SRK6kvAs9G4xQX4TbSo7f8j2?= =?us-ascii?Q?1buU7KvC/8Zp9fvdPDSmI5X/eISwDEpZhf7T/FgdEoQz0ggOfrtBcgWJ6VRw?= =?us-ascii?Q?vJPKvHcUZ1m+zXKxT2uwnV2VDVdaK7XfLdFsEhxytr/0VmYf53XM842Dnjdt?= =?us-ascii?Q?y334/zKmBaVYo9v6IbYzSVVv3KPJBXFsVByFkdLAaTbapBrUTHV/ocuNbi8o?= =?us-ascii?Q?1HRoQDrDq72Uq4IQu7xg9+uvli1qrTXeCb1q5O3U2ACBWRuVjvQlYH2Eg2n4?= =?us-ascii?Q?s0PdHSdm1kYCUWptkwC249g2UR2rQ+M6zo3K7iH0suoNzR6NI+BQRIEvvB8I?= =?us-ascii?Q?FGll/VjvS4WTpaIRd9Vg5to8MCayzzZEzNCznQzocdJHPln3E6oBtQfWrMwo?= =?us-ascii?Q?T7KIxOLVmM+oVKWyOa+LAS3jU01ysJgqOOhKadLlVBEquqZafn3GlN2mlSlx?= =?us-ascii?Q?BL4dMtLJCRYDPSolZFDxT2yhqoRpvImrWbwDjp8n9RXTQGGNyIsB7KU+gEjY?= =?us-ascii?Q?5jwe8Tgd5K48QUIYI51WES83D6hUT/VmmttdG8ezdyT68DLdqtBaPf7JFrmU?= =?us-ascii?Q?ivX0c85b3AXxPkU0P23zUleEGxELN5WDRa8U5aLmVCSfpRj45mw9i8OqhEMh?= =?us-ascii?Q?chf7PEasyNjdA7dbnQGX08CtHyzXLFEXZ8iQceOKfqyQIXy4XJ5w6Eq74sWp?= =?us-ascii?Q?rhpDkuvuZvPaGaHoB4hDVJ39v8toxSzisXIsveesoJxCXdk/Xyqp6qEuRhkN?= =?us-ascii?Q?iA6WmyyOcHsvfJSpM4zxtMvPqvhkMkZLwg598rikq2l4uBeWP3JfxsCc1QbB?= =?us-ascii?Q?YtaQafwRAn3dkudpWsE56/H1G1JQ4/3NhDHCONgf737Vbbzx7kAnjmrGVIWt?= =?us-ascii?Q?gcNsFH0M3tKWJMhLfy/N5JcV2gfSt0ln/KRgpGm8hmJ+Fj0zgh/2jr5Ku3By?= =?us-ascii?Q?0RAhpXHZBHGBWceiWpv/ah87yfiFmFyOSwNZbwNi8CsSJxBJpEGUwANBux0e?= =?us-ascii?Q?elTfOrUIgPE2mK/adZAIECe9OyGOscKGOOnBlUpRw3vCOhUUk10fG9anZdbu?= =?us-ascii?Q?+2jXVkHUKmJhkUBvCtyybKg7V7Wm4DwuJjSmY6BDbmRtUkxkq/6E63U/9W5n?= =?us-ascii?Q?c5QgaCWMhUrqQbT3E0CDVldotIXUnbdUDT9bq43gkULpqlj5XXb7sz5VP24s?= =?us-ascii?Q?ZPizTj4hETw0YuB+UH53TIRE5y5WoOQeHpAAIYtdU7XdATs8BCOdXGNlbigA?= =?us-ascii?Q?1bD0e0SSgE1SttfLMxXMhMuyw1QIQ1dQcqUtF3AChqp/fAFqpg38nZO0EGfM?= =?us-ascii?Q?R3RNedrwzSPDj3CBj3iwSxj837zSO4Bkg++efOgeyrvzUTZts+avUPhDfwpZ?= =?us-ascii?Q?BORcdjKeQZZYCxY5ZS366MIx4fZZa8UM/cYujfrN/iiqsQHWPCRrhklZezKi?= =?us-ascii?Q?3EW6t9agme+Kqo+qb8drPr479EDN4fxFtV4nFkfzchN8ERfm?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: 8bced937-01a7-48f2-ee78-08de890f563c X-MS-Exchange-CrossTenant-AuthSource: DS7PR12MB9473.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Mar 2026 19:06:49.9293 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: Rt0JKUyPrZY9yv3QdGxAQgBss4rXAYcB5gOIfpDeP2Cpr9QP3vib10L0u5E3QNo0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN7PR12MB6813 Content-Type: text/plain; charset="utf-8" No one will be able to use it, so the related code can be removed in the coming commits. Signed-off-by: Zi Yan --- mm/Kconfig | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/mm/Kconfig b/mm/Kconfig index bd283958d675..408fc7b82233 100644 --- a/mm/Kconfig +++ b/mm/Kconfig @@ -937,17 +937,6 @@ config THP_SWAP =20 For selection by architectures with reasonable THP sizes. =20 -config READ_ONLY_THP_FOR_FS - bool "Read-only THP for filesystems (EXPERIMENTAL)" - depends on TRANSPARENT_HUGEPAGE - - help - Allow khugepaged to put read-only file-backed pages in THP. - - This is marked experimental because it is a new feature. Write - support of file THPs will be developed in the next few release - cycles. - config NO_PAGE_MAPCOUNT bool "No per-page mapcount (EXPERIMENTAL)" help --=20 2.43.0 From nobody Sun Apr 5 16:28:55 2026 Received: from CH1PR05CU001.outbound.protection.outlook.com (mail-northcentralusazon11010065.outbound.protection.outlook.com [52.101.193.65]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 4ABA332BF5D; Mon, 23 Mar 2026 19:07:00 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.193.65 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774292821; cv=fail; b=n4aLv2b4CADI1/S2/HZNqgiYpx+gASKxDuZcymiGO7NmM3wZ8u3UJJ+ZQ5OWc4Wn1JQttmvLqm/6Ei35lLeasP5OJdbl9xFUqPcOHTuIha4fy3gSaEe4wrW7ymw4lb3hAZEVPZbFcF7/p6iRRDoBMlL9CmCIKBQf4Ztud8NDTtY= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774292821; c=relaxed/simple; bh=1Am4cw50bH6DZpQZCPajuZeg0E6MTF7HXNnr7WHx9Ho=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=MYWjfsxRxFJLX0EDsdFJ0wVKetyX5Wwwgy8JtsS9DiVIdYl09g3B6GXYWYwiRDbdJLditV+/tenl3K3ivDl+mQvMTAildZbfHfy/n5etL4ukpzz/DzrbntV0cc/JrtrDox61qQ2QK3RTmKs84l4Scm7Tf+TjtZlV36AAjSaB2nE= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com; spf=fail smtp.mailfrom=nvidia.com; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b=JNPp2Tyb; arc=fail smtp.client-ip=52.101.193.65 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com Authentication-Results: smtp.subspace.kernel.org; spf=fail smtp.mailfrom=nvidia.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b="JNPp2Tyb" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=gXdCTxReQoHDW7l56a0C6pNw8L1AM6KShGlu68H4QMTMP+mBDxV3/2HwhHxBjBJZOzEVAc87j+PNk+vQnLRigpx2juVhIuBwvlyZHRnh3IeJcOU27NTke4qTILXiEzN8KryS3LLL+8PYqzLprUbH51+V7xrSXbpSFvNhGKnvchHxKcnoAIUAa7QV0cWQ+5H2Fic7Gn2hqq0635NHA/J9WWtr046yUHish7hNJfMLsTUAxIdlca858TDstRa6j0doT2C+XIprpmRT4EwplEDtG+Bfw6+JEgyOTfN4dTc2KHofJ80dZ5snPxSv3Bor8RvK2wgyDPWi9QygIDtpmCAMoQ== 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=iKVZq+48ENzpu/a5GNrU8VvF93DyOtGyWGCG0/fa254=; b=pHEKCKJuSEILyKDQ092yzGAh51aVRpgiaRbe+lE5sOo/L6TLGPq+nN4S7lb5H7N143r/7QJAbGr3k9QKHvmeJS5iR94YvUQd3WMzSY08o3auSQXYKjsvTY1sSteuULoOEeuBwpM4u7lE9VoGB9OqeDjXR2672cQAcEn2MfIfkntVNUaRe7AJdYY1PUJZpMLPlLhC+h9gQWVYizUQiNACAjHbXaaTiOcVDrOoftOauYQRhK7qOErEc+3qWfU//43kWVkpF+Hq2Rirbhv+mukpPL7qWMMqxLSFURzuFkV0bNJ7mqIfn4IINoqaqquuMy2TvR4oih3oo2h3JYK98VOIbg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=iKVZq+48ENzpu/a5GNrU8VvF93DyOtGyWGCG0/fa254=; b=JNPp2TybszR+535x5Gk2WKMyH9/BWdzTesOvZ6ficXsEHQGwslvPN+GmRYh8KLVdzrCr51K5lda0BKG6n4Z6mBXX5hQGsI317dACxijnf8RqFXJiXSGH59FK/89FGn8GKyWjqKq1UcDp+7NmxcgToKhjOvA/wjqLYV53ragLkjaAVlw03LLWJzF80HTLgSqa5nur34KTogwhU/lniuz+VJC8TW//10nPpmbqzwZ9cRKiJ8Ol6PI2Edg8FI8M+p5kcWQU6lsjbyg49IVJlSyruc1TPevV1aFBSwLTaJJvpW5cGWDVSiwJCLLYRVYkCzESAn8cjb9HCgITL0lgBeiudg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; Received: from DS7PR12MB9473.namprd12.prod.outlook.com (2603:10b6:8:252::5) by SN7PR12MB6813.namprd12.prod.outlook.com (2603:10b6:806:267::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9745.20; Mon, 23 Mar 2026 19:06:52 +0000 Received: from DS7PR12MB9473.namprd12.prod.outlook.com ([fe80::f01d:73d2:2dda:c7b2]) by DS7PR12MB9473.namprd12.prod.outlook.com ([fe80::f01d:73d2:2dda:c7b2%4]) with mapi id 15.20.9745.007; Mon, 23 Mar 2026 19:06:52 +0000 From: Zi Yan To: "Matthew Wilcox (Oracle)" , Song Liu Cc: Chris Mason , David Sterba , Alexander Viro , Christian Brauner , Jan Kara , Andrew Morton , David Hildenbrand , Lorenzo Stoakes , Zi Yan , Baolin Wang , "Liam R. Howlett" , Nico Pache , Ryan Roberts , Dev Jain , Barry Song , Lance Yang , Vlastimil Babka , Mike Rapoport , Suren Baghdasaryan , Michal Hocko , Shuah Khan , linux-btrfs@vger.kernel.org, linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org, linux-mm@kvack.org, linux-kselftest@vger.kernel.org Subject: [RFC PATCH 02/11] mm/khugepaged: remove READ_ONLY_THP_FOR_FS code in collapse_file() Date: Mon, 23 Mar 2026 15:06:35 -0400 Message-ID: <20260323190644.1714379-3-ziy@nvidia.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260323190644.1714379-1-ziy@nvidia.com> References: <20260323190644.1714379-1-ziy@nvidia.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: BLAPR03CA0078.namprd03.prod.outlook.com (2603:10b6:208:329::23) To DS7PR12MB9473.namprd12.prod.outlook.com (2603:10b6:8:252::5) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DS7PR12MB9473:EE_|SN7PR12MB6813:EE_ X-MS-Office365-Filtering-Correlation-Id: 91c85a81-71b5-45d6-a4a3-08de890f5713 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|7416014|376014|1800799024|366016|22082099003|18002099003|56012099003; X-Microsoft-Antispam-Message-Info: OEkd6IQizMIexP1q5J5eIOL+Qs9lKtwIfjMeXaCVOUYciIYmxUmTHUP/gYfJ/09v9mzbKa8gBUi8ukMes0jh1n3fi+ysOtsYPPb54mbzxFQtpj627y8+elm+CxXTIf1S/PFLW7GHCxVXh3dVGWddSrZpWzdMWy8cgJZq8IIBl+42tEGbkR05WnlnrmOp12IiTnnMhZa07WgtBM3YdrGgKljE4dQ5Y8lPJ3bIbNomaNlCLTHZ0vBIedWs7WzdjMjSrgKDpvc2FocOZzBgJWRq1WBUCasDX2xls3+pwzXGqmJg8Pqu0kllrRPOp4ppGXibVz29dyvnH4kQfDVcadP2IZyZa1ISNR0A1J5uDoTn083fRT4wkaiQSSZ4zhCAGROZ2yW/MhIaikU2lGk6lwvumGsO/oqV4Fv6UXxGV1Fdd//mKFp5p0fVoLuvxQ9i40AFLz0+naqOz4rOTtNpACHWaOSfScVHDsJUbZ3WXRH56NHC5spq063zKVQpaDGSH2uU5fIoeoEm8JBuV2W5nNFi1sUXhecweP4AzNWFMVcwZtaa3nSFTqlhOmyUoszX28b7w4Sg800MfYmYTmEwlyI7fTbSYOk3bh8DVexNi4tzh33h5ZRqI25l6sMV31plrJ+WjrgnW81c7TFQtWLlPTvqoi1a6hoju/GrWrFkYnTZ07D2xurXqJsiAcStWor1zXQ5HXDc1oZmno1QAdaB7NXNybRHSIgiJvTYyfLvIIiGkDw= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR12MB9473.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(7416014)(376014)(1800799024)(366016)(22082099003)(18002099003)(56012099003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?HU6xeB7ENeYBpAtx/PfKfFMGPhQJmILT+5CQKPdfEXCqoEGeqsed69mjuoHy?= =?us-ascii?Q?jsQkJxUqNPnGB91/Eur1MYZs1dQyTikoDcXCjf3J3Zqt4Ql1JJYkVwUGlhwE?= =?us-ascii?Q?EqSmoiZY2luxxHvuRT5350lt/BbGJ7D5Y9ZABcrMkR2qW+EmWKAu7wAso1no?= =?us-ascii?Q?V5SmpkFuhXtK3G3ZVEUbqTrJuTGbVPVMmYtg37lxOTjm3SqIyVfZnV18/a+E?= =?us-ascii?Q?szPDdAnQyKSvKww78IRfOS1SYxR5TO+y0hBdL6txT4ITSma3KbF4hHqVnxg9?= =?us-ascii?Q?3+A1bhE+jN2mHwL3KXRAV+mE9F3wA94ZBpj54xMnO02nLf4FXk4LYSdgWf66?= =?us-ascii?Q?/ObqmXf+RA54f7SL7YD7n++ZiHgjYDUTwjxMUFRaPDnEhnqcdJIieRfcBKYy?= =?us-ascii?Q?LWwy6fDTaK+vyeDL3R1zbdk041hZBTxJyNYFdt/jNaXmtXf7haA40rgoRE0U?= =?us-ascii?Q?PW5I5mZQfxyws1khXrMIK2AsfXm1xQ4eLFn6ozC32ZW7RLeapFrQlcz6Jb2q?= =?us-ascii?Q?k34lgkD0Pok893uIo1t7brTa4s2dTG1mQmJu7aDW5Vcc3GO/e6PC2NgoT45j?= =?us-ascii?Q?pWh3gkOnpf8I6Co2BJJL91h2nkxYovxK0CHxtqzaYXtNYe+gL8WEYBzfv3kG?= =?us-ascii?Q?cQxKjnAi/idikb9ECwlsKgYluzNRGw9/7eZbIE8NDb5vJgUJ39QYd6/JtYfF?= =?us-ascii?Q?0PA6TYseCMgU6rSe8GWv0P4ItPT3dzFHFnSIIJqAGJqB8cKzcScHWbIlBEOe?= =?us-ascii?Q?98BHUke1cDqwYLCs2sZHIbhg0LGbUPd27+YKYmpc0zCBPz+43zZW/gimLwlP?= =?us-ascii?Q?Y5OfsOfZsz5KpN7GF9ncFpnX2ICEVzTRTXnGLUNPUN0bVFffk+oA0EQkMXyg?= =?us-ascii?Q?oDUOOmIkR0gEaWX3PRf4PrQZseq8JjBMbjeoiOo/MOGUEYqdkTh1yPUI/1JE?= =?us-ascii?Q?2ZEbuTAsHtpGpGuVQT+oa83iEDQbPSCLnzDN8jl2UMl3NBZhOxBSxBndY4Tx?= =?us-ascii?Q?vNbCMX992PGQ7PjMCH5SdaU9FJ12U+T1W/6Ow5wIBy4MxK+4YygMb13xw5rS?= =?us-ascii?Q?Dj5eUpzc+ZHbvEwAQxztQfCanslmUCJqSIWN6hnb3GJ7DvpJDWu+Tlc20EUL?= =?us-ascii?Q?1N11c/Oi0Z3gDAJmPFC4teT06Sc0gu0bDEtrhkmggaCiAhdatCYXH//eZNw3?= =?us-ascii?Q?0/By4KErUad7UQMxoD6ZyCYnIfOe/F/HgofcyMyeyt3u+tw/v/gxIrm4cCbJ?= =?us-ascii?Q?NsBIBSosuEEdbJMQ9DRZ8WaNyeru0Jo+fW1zq9wACMnZhKPM88x1spJTBFpf?= =?us-ascii?Q?wDglI6Qmj+407V6oZ2OKf1sGg3gQN9DstRHn5KRc44mfNJyQ+quvWa/l38YS?= =?us-ascii?Q?LCqaBBOJbMJT41oY5Km688aRnff4kTalTETdW13wkSHcB+7lVtcIKcZkcEHP?= =?us-ascii?Q?nczMJ2fu51G/cOfV0Sh1+dKzh53Bf3JcqLDYMKuq91DCOWOuvCVDTziDaq6b?= =?us-ascii?Q?1nrAmO0JAxUIj20VKjAdXz+ccf0hcoqoVyrzao20oXR4XhOCwcPNkUtyY6dK?= =?us-ascii?Q?eCXUlEl9pbVWatV/nrbu/bLn5n7bpOPlBa3ofHVOYsSNcoFaymrvsiqTkH4t?= =?us-ascii?Q?v+dJY7zxEEuaCbQoytmmArZ/CSICUUGnQCGAsxbXV97xNVLNl9V2dYVe3B5Y?= =?us-ascii?Q?M302fQj1XATaVvhpum7dq98z2InKvF8iaPJucKgK7A4L/pNq?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: 91c85a81-71b5-45d6-a4a3-08de890f5713 X-MS-Exchange-CrossTenant-AuthSource: DS7PR12MB9473.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Mar 2026 19:06:51.2921 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: xvBFF2/KqUyXtN6zHq+PHvph9/fqkEiK2AGwDlCSKxCjoDRjV8fczrIULGI/JbV6 X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN7PR12MB6813 Content-Type: text/plain; charset="utf-8" READ_ONLY_THP_FOR_FS is no longer present, remove corresponding code. Signed-off-by: Zi Yan --- mm/khugepaged.c | 159 +++++++++++------------------------------------- 1 file changed, 34 insertions(+), 125 deletions(-) diff --git a/mm/khugepaged.c b/mm/khugepaged.c index b2ac28ddd480..39f0b8959535 100644 --- a/mm/khugepaged.c +++ b/mm/khugepaged.c @@ -1899,7 +1899,7 @@ static enum scan_result collapse_file(struct mm_struc= t *mm, unsigned long addr, int nr_none =3D 0; bool is_shmem =3D shmem_file(file); =20 - VM_BUG_ON(!IS_ENABLED(CONFIG_READ_ONLY_THP_FOR_FS) && !is_shmem); + VM_WARN_ON_ONCE(!is_shmem); VM_BUG_ON(start & (HPAGE_PMD_NR - 1)); =20 result =3D alloc_charge_folio(&new_folio, mm, cc); @@ -1909,8 +1909,7 @@ static enum scan_result collapse_file(struct mm_struc= t *mm, unsigned long addr, mapping_set_update(&xas, mapping); =20 __folio_set_locked(new_folio); - if (is_shmem) - __folio_set_swapbacked(new_folio); + __folio_set_swapbacked(new_folio); new_folio->index =3D start; new_folio->mapping =3D mapping; =20 @@ -1935,83 +1934,39 @@ static enum scan_result collapse_file(struct mm_str= uct *mm, unsigned long addr, folio =3D xas_load(&xas); =20 VM_BUG_ON(index !=3D xas.xa_index); - if (is_shmem) { - if (!folio) { - /* - * Stop if extent has been truncated or - * hole-punched, and is now completely - * empty. - */ - if (index =3D=3D start) { - if (!xas_next_entry(&xas, end - 1)) { - result =3D SCAN_TRUNCATED; - goto xa_locked; - } + if (!folio) { + /* + * Stop if extent has been truncated or + * hole-punched, and is now completely + * empty. + */ + if (index =3D=3D start) { + if (!xas_next_entry(&xas, end - 1)) { + result =3D SCAN_TRUNCATED; + goto xa_locked; } - nr_none++; - index++; - continue; } + nr_none++; + index++; + continue; + } =20 - if (xa_is_value(folio) || !folio_test_uptodate(folio)) { - xas_unlock_irq(&xas); - /* swap in or instantiate fallocated page */ - if (shmem_get_folio(mapping->host, index, 0, - &folio, SGP_NOALLOC)) { - result =3D SCAN_FAIL; - goto xa_unlocked; - } - /* drain lru cache to help folio_isolate_lru() */ - lru_add_drain(); - } else if (folio_trylock(folio)) { - folio_get(folio); - xas_unlock_irq(&xas); - } else { - result =3D SCAN_PAGE_LOCK; - goto xa_locked; - } - } else { /* !is_shmem */ - if (!folio || xa_is_value(folio)) { - xas_unlock_irq(&xas); - page_cache_sync_readahead(mapping, &file->f_ra, - file, index, - end - index); - /* drain lru cache to help folio_isolate_lru() */ - lru_add_drain(); - folio =3D filemap_lock_folio(mapping, index); - if (IS_ERR(folio)) { - result =3D SCAN_FAIL; - goto xa_unlocked; - } - } else if (folio_test_dirty(folio)) { - /* - * khugepaged only works on read-only fd, - * so this page is dirty because it hasn't - * been flushed since first write. There - * won't be new dirty pages. - * - * Trigger async flush here and hope the - * writeback is done when khugepaged - * revisits this page. - * - * This is a one-off situation. We are not - * forcing writeback in loop. - */ - xas_unlock_irq(&xas); - filemap_flush(mapping); - result =3D SCAN_PAGE_DIRTY_OR_WRITEBACK; - goto xa_unlocked; - } else if (folio_test_writeback(folio)) { - xas_unlock_irq(&xas); - result =3D SCAN_PAGE_DIRTY_OR_WRITEBACK; + if (xa_is_value(folio) || !folio_test_uptodate(folio)) { + xas_unlock_irq(&xas); + /* swap in or instantiate fallocated page */ + if (shmem_get_folio(mapping->host, index, 0, + &folio, SGP_NOALLOC)) { + result =3D SCAN_FAIL; goto xa_unlocked; - } else if (folio_trylock(folio)) { - folio_get(folio); - xas_unlock_irq(&xas); - } else { - result =3D SCAN_PAGE_LOCK; - goto xa_locked; } + /* drain lru cache to help folio_isolate_lru() */ + lru_add_drain(); + } else if (folio_trylock(folio)) { + folio_get(folio); + xas_unlock_irq(&xas); + } else { + result =3D SCAN_PAGE_LOCK; + goto xa_locked; } =20 /* @@ -2041,17 +1996,6 @@ static enum scan_result collapse_file(struct mm_stru= ct *mm, unsigned long addr, goto out_unlock; } =20 - if (!is_shmem && (folio_test_dirty(folio) || - folio_test_writeback(folio))) { - /* - * khugepaged only works on read-only fd, so this - * folio is dirty because it hasn't been flushed - * since first write. - */ - result =3D SCAN_PAGE_DIRTY_OR_WRITEBACK; - goto out_unlock; - } - if (!folio_isolate_lru(folio)) { result =3D SCAN_DEL_PAGE_LRU; goto out_unlock; @@ -2101,21 +2045,6 @@ static enum scan_result collapse_file(struct mm_stru= ct *mm, unsigned long addr, goto xa_unlocked; } =20 - if (!is_shmem) { - filemap_nr_thps_inc(mapping); - /* - * Paired with the fence in do_dentry_open() -> get_write_access() - * to ensure i_writecount is up to date and the update to nr_thps - * is visible. Ensures the page cache will be truncated if the - * file is opened writable. - */ - smp_mb(); - if (inode_is_open_for_write(mapping->host)) { - result =3D SCAN_FAIL; - filemap_nr_thps_dec(mapping); - } - } - xa_locked: xas_unlock_irq(&xas); xa_unlocked: @@ -2224,12 +2153,8 @@ static enum scan_result collapse_file(struct mm_stru= ct *mm, unsigned long addr, xas_lock_irq(&xas); } =20 - if (is_shmem) { - lruvec_stat_mod_folio(new_folio, NR_SHMEM, HPAGE_PMD_NR); - lruvec_stat_mod_folio(new_folio, NR_SHMEM_THPS, HPAGE_PMD_NR); - } else { - lruvec_stat_mod_folio(new_folio, NR_FILE_THPS, HPAGE_PMD_NR); - } + lruvec_stat_mod_folio(new_folio, NR_SHMEM, HPAGE_PMD_NR); + lruvec_stat_mod_folio(new_folio, NR_SHMEM_THPS, HPAGE_PMD_NR); lruvec_stat_mod_folio(new_folio, NR_FILE_PAGES, HPAGE_PMD_NR); =20 /* @@ -2240,8 +2165,7 @@ static enum scan_result collapse_file(struct mm_struc= t *mm, unsigned long addr, folio_mark_uptodate(new_folio); folio_ref_add(new_folio, HPAGE_PMD_NR - 1); =20 - if (is_shmem) - folio_mark_dirty(new_folio); + folio_mark_dirty(new_folio); folio_add_lru(new_folio); =20 /* Join all the small entries into a single multi-index entry. */ @@ -2266,9 +2190,7 @@ static enum scan_result collapse_file(struct mm_struc= t *mm, unsigned long addr, list_del(&folio->lru); lruvec_stat_mod_folio(folio, NR_FILE_PAGES, -folio_nr_pages(folio)); - if (is_shmem) - lruvec_stat_mod_folio(folio, NR_SHMEM, - -folio_nr_pages(folio)); + lruvec_stat_mod_folio(folio, NR_SHMEM, -folio_nr_pages(folio)); folio->mapping =3D NULL; folio_clear_active(folio); folio_clear_unevictable(folio); @@ -2293,19 +2215,6 @@ static enum scan_result collapse_file(struct mm_stru= ct *mm, unsigned long addr, folio_putback_lru(folio); folio_put(folio); } - /* - * Undo the updates of filemap_nr_thps_inc for non-SHMEM - * file only. This undo is not needed unless failure is - * due to SCAN_COPY_MC. - */ - if (!is_shmem && result =3D=3D SCAN_COPY_MC) { - filemap_nr_thps_dec(mapping); - /* - * Paired with the fence in do_dentry_open() -> get_write_access() - * to ensure the update to nr_thps is visible. - */ - smp_mb(); - } =20 new_folio->mapping =3D NULL; =20 --=20 2.43.0 From nobody Sun Apr 5 16:28:55 2026 Received: from CH1PR05CU001.outbound.protection.outlook.com (mail-northcentralusazon11010065.outbound.protection.outlook.com [52.101.193.65]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id CE2D032F749; Mon, 23 Mar 2026 19:06:58 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.193.65 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774292820; cv=fail; b=jZO4xY1p9aD4bPUOFfmKfNYQJEw0MrxCWT5RrUGOWHQVkFDYeiygGoeCvrHtUF2lqkkRMXi6EcDBWeC7Tl5oMgEPxshBZZIoKBcLqjJppJWv1I2YonJwvobCZtm7HO5iAK7xAHtjnoLcayqI8b1PCElD5Px5FkCv+CuXvMv3Sq0= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774292820; c=relaxed/simple; bh=ESRNqu9sqqdEMrwtc2b9Nj6chmmDfugmDmwXH8DjAEA=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=tpWzo4hfmMHHkvcahKQEUyaPihp7u+m14EUyOKRWVSPZmRTV0AmxSAMjzp9s9VW4AoPvTsABYgvXqxE3ZGzRe/OpSUX4RsOM/ISn7lylmkqClNS5w+/EcHSNXKyZjHC8XLuspv5IJtbYdYFu5kUKQy5jRr3xbl9v8GvrQ7uL0Gs= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com; spf=fail smtp.mailfrom=nvidia.com; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b=JSaGsfUX; arc=fail smtp.client-ip=52.101.193.65 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com Authentication-Results: smtp.subspace.kernel.org; spf=fail smtp.mailfrom=nvidia.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b="JSaGsfUX" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=N3AmVwM31dV2TqRWTzscC+pRTdb4w83kQ+PW/XdO56vlidRnKaIbDLOpf4lkc9xCWPPkJc4kHGzMpgGgcIsT4TesdXI5WFHVHyx0ptLXGy8RB1as+pKh3KYlaveYLWL6OY6LBpniaytvdPw0009D7liENNDgfZZC33QA3lZDgoF+d5OIlNFdoMfGK/hlFkY7Oigakkk9/g04/8h8IxZXyi4lb4EoGckVSElEz9dby2MkSq+o+izxLjj+Yxd4EZm4tS/feGSF1RWJE2n9PcFS33zVr1/JxJPbbDoWxEgntmJZuPZBAqGRYay2nVYwXnrh2p4Meijy0Ppe+RjLaySWXg== 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=rcOdDndzZrfbZ55rDcwBJOIPoxYYTVfJGwraIDGQWt0=; b=JQQYYvgj7s/ccs4h0pHFXnud3/dNJ0jLHXOFfRGrqzH1Bv+fbyQVVdX9w6IWIXxDDVwbfnAtXc6cVB8MkDWkV3HHzJTpa24UDp3L3RsHsihs7iNzuO5Vma7hgoWWG4l2B1vk2oQLPB26feAJJPPbd0zScbiDiWvSwEYAX+kOIQ2NdHRSYA4yfP7pL5PBY3DX2TnCf4jHbgKEXtdtpEAUSbxumHMR0YCngENRAbSV7oZhNGUTlmQT+PbHMaTzLnf5SLSxLnN3USM58Ron1mAqdTr19bA6FCdfwlfwg5IT4M+08Pqj8b8BriF1t7lSuoCpwl0oueEPd6xmdelxeNMpoQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=rcOdDndzZrfbZ55rDcwBJOIPoxYYTVfJGwraIDGQWt0=; b=JSaGsfUX8Nh0uez1h9PA8n0+zxIZCBTNE6z/2f/uhGYz1BLTKpt6FTLf8XfynEm+ofNrWKzBq3OGAW6YP4PQTZhgnqVgnGBIpWsTOELiq8d/e3srmOrQ5FLcSmEx2bVyzS83rIL1Cr50KdZiZOc43Zc68oQgdXrZcHPblciHdo1hCnGDUi4GmI72ibQtSbf21mmVhY0E5qQZeKWrdSerb3BmYlQWRV9dNCzP9O8x7zuVd7BQJJjAZtEHVH4ed+ZbBaLX1H8J/zcK54wfcpP2BBa/tI8kTnC2ZfbStBTc72V/A8rpXD5PXXQKIZIbfq+X1dMuIej4arpZ67oiRq07Ow== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; Received: from DS7PR12MB9473.namprd12.prod.outlook.com (2603:10b6:8:252::5) by SN7PR12MB6813.namprd12.prod.outlook.com (2603:10b6:806:267::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9745.20; Mon, 23 Mar 2026 19:06:52 +0000 Received: from DS7PR12MB9473.namprd12.prod.outlook.com ([fe80::f01d:73d2:2dda:c7b2]) by DS7PR12MB9473.namprd12.prod.outlook.com ([fe80::f01d:73d2:2dda:c7b2%4]) with mapi id 15.20.9745.007; Mon, 23 Mar 2026 19:06:52 +0000 From: Zi Yan To: "Matthew Wilcox (Oracle)" , Song Liu Cc: Chris Mason , David Sterba , Alexander Viro , Christian Brauner , Jan Kara , Andrew Morton , David Hildenbrand , Lorenzo Stoakes , Zi Yan , Baolin Wang , "Liam R. Howlett" , Nico Pache , Ryan Roberts , Dev Jain , Barry Song , Lance Yang , Vlastimil Babka , Mike Rapoport , Suren Baghdasaryan , Michal Hocko , Shuah Khan , linux-btrfs@vger.kernel.org, linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org, linux-mm@kvack.org, linux-kselftest@vger.kernel.org Subject: [RFC PATCH 03/11] mm: remove filemap_nr_thps*() functions Date: Mon, 23 Mar 2026 15:06:36 -0400 Message-ID: <20260323190644.1714379-4-ziy@nvidia.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260323190644.1714379-1-ziy@nvidia.com> References: <20260323190644.1714379-1-ziy@nvidia.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: BLAPR03CA0033.namprd03.prod.outlook.com (2603:10b6:208:32d::8) To DS7PR12MB9473.namprd12.prod.outlook.com (2603:10b6:8:252::5) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DS7PR12MB9473:EE_|SN7PR12MB6813:EE_ X-MS-Office365-Filtering-Correlation-Id: 03daebe4-aaad-4774-78d4-08de890f57db X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|7416014|376014|1800799024|366016|22082099003|18002099003|56012099003; X-Microsoft-Antispam-Message-Info: juT+JWxt1KTkE9zCgH0NGIjyBvEaPxkyzOLInDLO8MA30B0dqyPQTndynIVmozR9lg5UEIinFijoRZy0P72bC9bubPUZSHwE+e84stHMa5xLFhAW/jBt0ZKCbScOHKE7eHV1Bw2WAxKnUkxjJc2NbiIPZpnWsO3QEsU+6PYbdnprYYShFm5ZOzLuhRf7GVRmcIUpbMpDKl5IQ1K6oOCUhCIpJ/txoqvprrwpNE/ogOXJBkM0b9sBDTmoxkXVx7ADonK9FBe5aAjbDmbXIhCuIhv49PbE4pE7IfzN2wQ59jJHhB83h5SGi+Ra1kukm66lksePBTcicAxEEDoct/HM5S5ew4WdwrBruuDAK+h7Gx+qQEP1oUoYee0HUEC6EJSFQJ/Z/cP48jxNyGGfgi+FHaWpRslV7kq88W3yOq76oWjw1P3g2d75nAw7lCzPq2iQqmJlCzBXgKIJXGGwMXSpYwqICs4MIxUfNCNIf212Dr9g9bD6G6OafA4vbq0UTAHtO0z2fbdhvGs36Hxe4fa+C16GEtrCOVTi2O+u18FSsg1f2OjcdOxBTOVPFy0wO+ueill+gz91xG/bPj9HpbC2CMdD7AGMnfEqml/TquSS63ZBha3HuU5bewT6uSQhQqin+4Jcy7LN5FV08xVchPl22mYFgvu+5Nv8XXtnf4u1VQ5auw0UQPZeXldo2EwN6sgD+yxQphZ3NhTNBgp1pSZqGsoY7p7s1Y7nbawLI7FJilI= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR12MB9473.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(7416014)(376014)(1800799024)(366016)(22082099003)(18002099003)(56012099003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?WHG4MhY+/+/DJoFqC0BmQEo/78E5qHWgVsUdiE/PMWdV56S8sE1ROA/+1Rpt?= =?us-ascii?Q?XmgphtAXUQtbD1YWa/o8cGWJwWZCiYz7ZnsiraaUQfKTpRGW9fyWb0VjVZpD?= =?us-ascii?Q?PRQ6kyNth25kIW6qfqh9Q0e13tX9tb7lhlvqkp3zibyKXMZ34U1Mzg1wqf7j?= =?us-ascii?Q?OZe3aUh6PXZNyKMmkSpvPMLiT+GU/gJWo1etHQCgU7ya+9p448LRMSIXp+1f?= =?us-ascii?Q?qFvalyVA2VESw3ZGMP/b+9lls3Sk0jDp0BM1DFeaN34by8IQocygrHG+zSVF?= =?us-ascii?Q?3PYRzWGIWKGacOvkWepaHsjsPYmSDEjIMdkIYkunN5wMYWR1bEsmn2fbCcFJ?= =?us-ascii?Q?/1wX+DuJccf6SJhVaT76RifnyiPosV8hvkCOv86BQUZ9tvwoPNuaz+/sWjVh?= =?us-ascii?Q?FUpYFvcqYi/6YT8mmByHaedn/CdEo9RD6FqQE9vhAspbke7bSj1ODil7WBzd?= =?us-ascii?Q?wtVj2oZ17bnBynGkCxQG4Fqaq3PZop/X9X5TuazJ/Jdf/Bv8kBMBhcGMK3zj?= =?us-ascii?Q?fU9hrsFWSkPbAqdJKaJDQyeKm0MYigiqHeaFcmJUsWmwlHp4GbICVmhWk1xG?= =?us-ascii?Q?Guu40DUMztSIPux7ekuimTvd+4oSNISbfjfPJ39CkaMNygOjJokYro7m1GoO?= =?us-ascii?Q?DYhAaTdiMBKpj0JoBru3wDlRlE3gSN0xWa5YBjUZJZtl/3XnaFjqVCRahveb?= =?us-ascii?Q?p+t+YY5i8AQ5AgbYz168BH+TbZbOna7OwBVTB3pq42SYz+FsZARhS2e4WHjG?= =?us-ascii?Q?lAgSG1/HMRZuCC5It5N9PxOa82qszxmM/U/BQKoSm4ABT0NJ3Dy7M6+eJjlJ?= =?us-ascii?Q?yUZmEYLTwdiBUIHYgRSGrpG70HQzq3tLcE39IpuoFueEIDKrg6aq6KpXzD26?= =?us-ascii?Q?5z1h9PZtAssj8RogCtQc3jtGaK25D1WU2Nn765mF4hkMUVe7MTftqnuqK8HV?= =?us-ascii?Q?Cu1PfmGz9p9O8gQ/Vps/cudJFr0rzUuOlHPVZr/x41QGf9y1VMlumUPKsVi9?= =?us-ascii?Q?UPsFrtC19pjUGueaLl1TtBNqzq4XOmlSlViZRm0yC3PgMl3ScXt2k/q0/cyY?= =?us-ascii?Q?mV9WGGV0AUr9zRhB5S/KrPQv2T7XUJW6V0BURUwfe1cvXXgagvuIwMu6n3wu?= =?us-ascii?Q?LAlQ0lj+Y8csdm0FVNC5b9FpWadWcBuLwilQz7qHzgDjErh9GW6U8ONg+4+Z?= =?us-ascii?Q?k9vNd598UaWqAJUZhmlWWixksP6YGd8jv7T5OgYKVz/xqepQ7cVKDQ1A5Kl5?= =?us-ascii?Q?Mz69MyMYpQ4lNB3RqxhA8PH+1NN63PukUzBjHScVCGjKi6KndJL1rPCOYde4?= =?us-ascii?Q?5l3Kl1nboGgAO8fdqqcNa94JSrSkLYfTRqLUIw9zrDeheieoHrTtLO65mnkp?= =?us-ascii?Q?sTIZFRmN0eLt5iCX6AxdtHsOjhj1NS2Y2PT8AEbjVtzAhb79MIPK37NW9QK6?= =?us-ascii?Q?Hg4JFWhv+liV4PZ05oOax9F9YUOaqv3eTL96uJ/bYQ+49hAWOpm9ZhfOUT7h?= =?us-ascii?Q?PyhdLsq2wYWZ1IqAl1oikf/XwaZ+icRpOICDwtUbngtRbV4RHZ6prWV2cW3Z?= =?us-ascii?Q?V3wdP1DzYPGXFzDq9U7099vh9mKvAH58Tsvl60emwZfoQY5/knt3DvUoINw4?= =?us-ascii?Q?hfVAkMt8hyinYhXBk06lVjRZyWe43MDSdHFvsv9BK1UcE15riJAeIcttSB0h?= =?us-ascii?Q?eeA16OWzHZ3jQJfF86wkwm716w9B7LK9VBuAJOlANf9sGnhB?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: 03daebe4-aaad-4774-78d4-08de890f57db X-MS-Exchange-CrossTenant-AuthSource: DS7PR12MB9473.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Mar 2026 19:06:52.5913 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 8bLBgndZY7w+Qg0yL71JQUALDqK8kH+Uh+bMjLdmS4CVRpymsfVkoS456DiDjzkN X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN7PR12MB6813 Content-Type: text/plain; charset="utf-8" They are used by READ_ONLY_THP_FOR_FS and no longer needed. Signed-off-by: Zi Yan --- include/linux/pagemap.h | 29 ----------------------------- mm/filemap.c | 1 - mm/huge_memory.c | 1 - 3 files changed, 31 deletions(-) diff --git a/include/linux/pagemap.h b/include/linux/pagemap.h index ec442af3f886..dad3f8846cdc 100644 --- a/include/linux/pagemap.h +++ b/include/linux/pagemap.h @@ -530,35 +530,6 @@ static inline size_t mapping_max_folio_size(const stru= ct address_space *mapping) return PAGE_SIZE << mapping_max_folio_order(mapping); } =20 -static inline int filemap_nr_thps(const struct address_space *mapping) -{ -#ifdef CONFIG_READ_ONLY_THP_FOR_FS - return atomic_read(&mapping->nr_thps); -#else - return 0; -#endif -} - -static inline void filemap_nr_thps_inc(struct address_space *mapping) -{ -#ifdef CONFIG_READ_ONLY_THP_FOR_FS - if (!mapping_large_folio_support(mapping)) - atomic_inc(&mapping->nr_thps); -#else - WARN_ON_ONCE(mapping_large_folio_support(mapping) =3D=3D 0); -#endif -} - -static inline void filemap_nr_thps_dec(struct address_space *mapping) -{ -#ifdef CONFIG_READ_ONLY_THP_FOR_FS - if (!mapping_large_folio_support(mapping)) - atomic_dec(&mapping->nr_thps); -#else - WARN_ON_ONCE(mapping_large_folio_support(mapping) =3D=3D 0); -#endif -} - struct address_space *folio_mapping(const struct folio *folio); =20 /** diff --git a/mm/filemap.c b/mm/filemap.c index 2b933a1da9bd..4248e7cdecf3 100644 --- a/mm/filemap.c +++ b/mm/filemap.c @@ -189,7 +189,6 @@ static void filemap_unaccount_folio(struct address_spac= e *mapping, lruvec_stat_mod_folio(folio, NR_SHMEM_THPS, -nr); } else if (folio_test_pmd_mappable(folio)) { lruvec_stat_mod_folio(folio, NR_FILE_THPS, -nr); - filemap_nr_thps_dec(mapping); } if (test_bit(AS_KERNEL_FILE, &folio->mapping->flags)) mod_node_page_state(folio_pgdat(folio), diff --git a/mm/huge_memory.c b/mm/huge_memory.c index 610a6184e92c..54b3d21e4cbb 100644 --- a/mm/huge_memory.c +++ b/mm/huge_memory.c @@ -3832,7 +3832,6 @@ static int __folio_freeze_and_split_unmapped(struct f= olio *folio, unsigned int n } else { lruvec_stat_mod_folio(folio, NR_FILE_THPS, -nr); - filemap_nr_thps_dec(mapping); } } } --=20 2.43.0 From nobody Sun Apr 5 16:28:55 2026 Received: from CH1PR05CU001.outbound.protection.outlook.com (mail-northcentralusazon11010065.outbound.protection.outlook.com [52.101.193.65]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 0DB2B335066; Mon, 23 Mar 2026 19:07:02 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.193.65 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774292823; cv=fail; b=GBqItWc+4O6eDV0XSXqTDq+oWNq1JT9r7whz6HuB/hcanbnIPpAnt9DPKGf3ygu4MSpTFMAaup13CtyldtqqL4scrYnFMWcCu8MW2Dzv8H0m6CVqdHjkwp0S8U+KWjHIfq6zQsh1EeN0QjkcS7EyqItB9rH55gteWpaQTUawY94= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774292823; c=relaxed/simple; bh=xzP6dnYNKCaAPYd6qDH6qxU/Q9M//j/Fd8Y2O7pyUMU=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=kH+FSumks7J5pd4quusWmQHtCpuAXB5mq2mZFuMXlxNvKiVQnRAeNsq0o7MfwHtIYjT+kcb/jXSYidI80KfWIMRw7O/cuDDqU87XYBQnV43cIPT3MuXF6Bw+kuUKKqWYMe/xzKVu0gkSk1glsXnJGb8JTjs+V4BpAIvUvan2d5g= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com; spf=fail smtp.mailfrom=nvidia.com; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b=D5BMohQF; arc=fail smtp.client-ip=52.101.193.65 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com Authentication-Results: smtp.subspace.kernel.org; spf=fail smtp.mailfrom=nvidia.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b="D5BMohQF" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=gbhrpS4RP5mSP1kcYxwyUnecEBXnIece5MD2T8J3dVo6KSgDNWz2TNfwSWgduXgjWsYJRS1+/G/KDR7bLj+BWyoEhFSeQF3vqJbNSB6N/k1icwBhd1cAW1gpt4oACo5eLxlXeXi4CEVhRhF+fwlPpESZefh4kXpY9S6qFqUQKh0HWbtIVUtbtz1BhR4aaaSThci+tsaoUWIG+nVWpcQjrM1gJB50/NUJejioWbU0j40htQkBmHzK8FnBO6aVSbJntxByaaeke0E/W9/iasci9Li/Z8UceR82iUJJpf6rMMS0KaAWPIj0YauMpci5oMYc7B5VRjse3PsHoeFr1s8psg== 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=LHR1TMF7RnPBJKP58PdFFFmtsYveJ2teBIQQDxcTryY=; b=w8mpkHdaHtBKK9PpZg0W1yTOEQvRvdhLAomsjq/b8WlygB/rARE77ZHePjXCgKH9+F8QI1FYOfydAxrfPjvlasgxBbsO2uPckU3rorRJir1hVwQNKCTxjI2EMvxHMwLzO+D6GnrFPtlAoxCjPh5O7j56BAXcGTDgtR9fCTVWFpQFpD0gvVXPwhC8QHwfKfRIyonctp+1YOVcoM7zMJL+p02WVl2Zk4F5AoO7rm6142KPfRJINgFTj/0tg+WMBAcv2Dpx/5rCbIRgtDJJrO6hPlsO6l1kBOVAmaD1OSwUjYYE+/NGNQcWEvvPBFHQtTO0KI/U38Ld+H8s6xk0I0ph+A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=LHR1TMF7RnPBJKP58PdFFFmtsYveJ2teBIQQDxcTryY=; b=D5BMohQF5eO5MrHAQaOx756FuIu1qX0TDYi50zuVRnkqyjJtwbPapOCqg/Go6gggSTDXVIzWO8r6Hv8kJ07HAJJg6pDzgeStqibh2YiqS05RQ9nwgKbfGY8EuGEK0UJ7+ge1j4pf59m6BPjV6SpS52lUF1JieOOyuSJGRnEW9GwOSFHQhGR6k6EZwY6Kp/hFZOwfWGOoZm8PppN2xKVIUoZUPiSn102Vk9LyU7slmPujxsbxx08NsuRp6F5D8iq97zlZ9ngs/+aw+bPAx8D5fMuzB0zDZw86TtWbPJMLsPcxSG85KpSUgxYvizOsAaYYHu1EKJQWdXYCIBNoIGDweA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; Received: from DS7PR12MB9473.namprd12.prod.outlook.com (2603:10b6:8:252::5) by SN7PR12MB6813.namprd12.prod.outlook.com (2603:10b6:806:267::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9745.20; Mon, 23 Mar 2026 19:06:54 +0000 Received: from DS7PR12MB9473.namprd12.prod.outlook.com ([fe80::f01d:73d2:2dda:c7b2]) by DS7PR12MB9473.namprd12.prod.outlook.com ([fe80::f01d:73d2:2dda:c7b2%4]) with mapi id 15.20.9745.007; Mon, 23 Mar 2026 19:06:54 +0000 From: Zi Yan To: "Matthew Wilcox (Oracle)" , Song Liu Cc: Chris Mason , David Sterba , Alexander Viro , Christian Brauner , Jan Kara , Andrew Morton , David Hildenbrand , Lorenzo Stoakes , Zi Yan , Baolin Wang , "Liam R. Howlett" , Nico Pache , Ryan Roberts , Dev Jain , Barry Song , Lance Yang , Vlastimil Babka , Mike Rapoport , Suren Baghdasaryan , Michal Hocko , Shuah Khan , linux-btrfs@vger.kernel.org, linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org, linux-mm@kvack.org, linux-kselftest@vger.kernel.org Subject: [RFC PATCH 04/11] mm/huge_memory: remove file_thp_enabled() and its caller. Date: Mon, 23 Mar 2026 15:06:37 -0400 Message-ID: <20260323190644.1714379-5-ziy@nvidia.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260323190644.1714379-1-ziy@nvidia.com> References: <20260323190644.1714379-1-ziy@nvidia.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: MN2PR04CA0006.namprd04.prod.outlook.com (2603:10b6:208:d4::19) To DS7PR12MB9473.namprd12.prod.outlook.com (2603:10b6:8:252::5) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DS7PR12MB9473:EE_|SN7PR12MB6813:EE_ X-MS-Office365-Filtering-Correlation-Id: f6bbf14d-e605-49d9-9698-08de890f58b0 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|7416014|376014|1800799024|366016|22082099003|18002099003|56012099003; X-Microsoft-Antispam-Message-Info: VKkLhW7BshBjUn53ZwItXttGhgiyXmczVdF5GGxb1ePuBVJjjJCCt8fkrvYnzdC0JnB8IxlUkO4OEGSWXaw8UtbukIqPHkAtc0JqBOKklv/8f2YlkcBa3Iac9p4RpzLyKtaMgcL87INjXA89LRyRqM8fczhaeNNUPpP7IUJZ6lAJ0F3Wi0TeEhlPsQNUEoAgPqgHWrMhqUhFJdbLEzVUdI7h/thdE5NhQjGBm8EP8yD6VOBAdyaqd2xwA+TVs40HW7wWu53j3cuMN5hv+k483rrkacpYzdHtYiSopm+p+wH8wZA0iDaS5Olj5UfPKw3w355j+4TEdHqNhAtCOibsLaexq4XeVUSZopGIfi6E/Orw/d4mfcQGR9no/oC4y7hrRQCYbjwGmqgHgyC0utoTp9us9CcRVDZOvQKrBIRyfNCt4ETTH/l7wIvhtMZWzJWGmMFgJDucM3c0YsVj+sKeqfFDPdZWvCMU25Isx7s7DYMDEEEDYqGbmx2OreAbBDWwlUvRGN0naoNXWPDl7nC+JK3+sdWvTl6RtFj9jbt6vUx8umlUYECKZN/VzmUg2EhxOS54j7VFvZrRxmQMfh3QE8peyiROjVlF7RUOWTQdGj6TvOYSaurzYP1G68Jck6X5Rsnb5kOPmfMloXpvLJkwZLd2FvRxc8j9AvR0FZN3pYMttepFDe7YLZeLxTUKLNjHl66SbA+ej/gcT8SHj+joLacSSW+XpGVCrCDdneIPujs= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR12MB9473.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(7416014)(376014)(1800799024)(366016)(22082099003)(18002099003)(56012099003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?iepoZgp7HUBP6bKnrv62JcLN/Z3IkcefkL7j+ycFSUCEnWXSuzxOgAihO4df?= =?us-ascii?Q?5UYQ+Ov5dDqQCRCRO7QCG5rwClklZ9rnnRS/3EfC4vb1qPou2B82LMgKbTLt?= =?us-ascii?Q?1fEDSKd0hl5gL04BT3Ese3dh/vFJxby51DyAfdt90jSbmem6JFtXMqrgaRJh?= =?us-ascii?Q?DHfmSpf+J6XWGYgUso3C9xQpr7ycwnxzwLZ1irNhSLv39sKanM5dzpHZG4jp?= =?us-ascii?Q?i+jpMPmEGzjyH3SMeDCSxsR7AOD9D/h1HINkox9v7O8d8oHunYvR9YkUnmMh?= =?us-ascii?Q?QTyCxWexciPz2+4m0vwFMrMsj/62syVFdXYA63nx8QfZafgHXoxnRyWwhKTr?= =?us-ascii?Q?jvPpsiu7mlHxFk+CgBJPW3VcqGfxUVF0didqE9nI+698kbJuFLoIna8+++Bv?= =?us-ascii?Q?DEuM6sUIgC1JesrSWCBMmPnSDyNSTR9UeEMkkbF9+z9gbaPDTttIcAKb/roe?= =?us-ascii?Q?zOG6SSCXxUd+gjevmm3i/vbSxziG497kybcV3fdrXrLWNE49/Dgz1xskAggC?= =?us-ascii?Q?N/+DX9WA74RKPfpRE6yC0iicBwH59eNmIYZHRG1LjapQK/FpGKLTBEc3t5c4?= =?us-ascii?Q?EbHio1d9FwW/3T9QRBas+bAe95YT4yLRgnQP27XBwBYLKC165scRddCIWJU1?= =?us-ascii?Q?QkKs5crcIgysE6f1zr/DNaUU+cUtY23KbO5RwgpzUd0tOcUi0PvO54bL74zz?= =?us-ascii?Q?DnsaYGx5A95SWDbu+/aCQ45TV+O/9zsKg6KosWAs0DWPK/qKoU0SLCBn39xV?= =?us-ascii?Q?GhgyzKP9ATt6U6wZUFdpIZhDt/UX23DrotNc92KbuRvVtUbxz+nqicZdpmoP?= =?us-ascii?Q?3R5o6C4O91c39Pk8ySTOhAc7BtOZcdZzXs1GHGEbezOgNHyV8tftbfBfxGdb?= =?us-ascii?Q?SydG7+rlDkDUjvim3VC8iP+XmI4NTV4PLGsJSFdY80X+hVAeuWOzgUYiGv+7?= =?us-ascii?Q?Uz6EtNQ/Q4mSxbtq45PIPf58y5cFmbhFCxPbDH4Va19lE1/yprAT7RQxP6dX?= =?us-ascii?Q?aZghYDtcOASfdlS+2ATXyz/n3y9k3MajgZZ+sDe1IAsw1aKf/VOkuZfrOjMn?= =?us-ascii?Q?lqMbgfp7zhW64vzSEF9GNbK7ehZfrdj3JwQf53JCu3eG0Ug5v8lJRfDXAT1p?= =?us-ascii?Q?cPODnk36yDwlx54mgpDVzPtMCcVdpbjLdy/Kj77jpsZc5oZrIL9yDsUmqq6b?= =?us-ascii?Q?nSV23oEd/JJqtVyqvMB1gjWBOYfYujhTo3knRz+LxudY19IFWaZSm47DSBDa?= =?us-ascii?Q?xrrccUt70QtSSC8otNNN9HVpsKQYSMtL3DWhbsJt4Rx6fypDfyvG6AY2aaV7?= =?us-ascii?Q?lqxJSt+YlXE+mDsZwEH8mWR4uZcbnyLLVMTT18fDBBu4F786HRuwnpH6mqaI?= =?us-ascii?Q?uoSMGcztLD1lt9GMaSPPpLK/GU1soahuwuV9/gpBVERLFnOG3oYT/koI5HLh?= =?us-ascii?Q?9pW2SByUL1CQStpzMC7b9WW5/hsuj4xCBUFpREGz6ZDZ9blQKIxdy/6xGusc?= =?us-ascii?Q?sN3tzlkch43TYxXdSShtmte7n8vU1OzNUbcJvyrIca28Q2C04+rSMS6zi6uB?= =?us-ascii?Q?GH3GvI0HmTymAWug/0ZOokTe96natQ1ObuRRrajfisTITVGDkAg1Jdpxdn9N?= =?us-ascii?Q?OBeBjP5h0mSOqOeBkdWvJ+M+4nqcoO+qq25lE+ofh8dlDkjTzfA+vMmsLJyz?= =?us-ascii?Q?07N2seP133RGuGvWsINIBuTq89FYigUta2VBoV/B6Psz0yLo?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: f6bbf14d-e605-49d9-9698-08de890f58b0 X-MS-Exchange-CrossTenant-AuthSource: DS7PR12MB9473.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Mar 2026 19:06:54.0173 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: vxYIHJhmOAE/bTtP70khXGFjwewncPRIawBR4j/L59pYDOxNQ0XmwaazcJruNGaJ X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN7PR12MB6813 Content-Type: text/plain; charset="utf-8" It is used by no-long-exist READ_ONLY_THP_FOR_FS. Signed-off-by: Zi Yan --- mm/huge_memory.c | 21 --------------------- 1 file changed, 21 deletions(-) diff --git a/mm/huge_memory.c b/mm/huge_memory.c index 54b3d21e4cbb..de4a1e6ce376 100644 --- a/mm/huge_memory.c +++ b/mm/huge_memory.c @@ -85,24 +85,6 @@ unsigned long huge_anon_orders_madvise __read_mostly; unsigned long huge_anon_orders_inherit __read_mostly; static bool anon_orders_configured __initdata; =20 -static inline bool file_thp_enabled(struct vm_area_struct *vma) -{ - struct inode *inode; - - if (!IS_ENABLED(CONFIG_READ_ONLY_THP_FOR_FS)) - return false; - - if (!vma->vm_file) - return false; - - inode =3D file_inode(vma->vm_file); - - if (IS_ANON_FILE(inode)) - return false; - - return !inode_is_open_for_write(inode) && S_ISREG(inode->i_mode); -} - /* If returns true, we are unable to access the VMA's folios. */ static bool vma_is_special_huge(const struct vm_area_struct *vma) { @@ -199,9 +181,6 @@ unsigned long __thp_vma_allowable_orders(struct vm_area= _struct *vma, */ if (((in_pf || smaps)) && vma->vm_ops->huge_fault) return orders; - /* Only regular file is valid in collapse path */ - if (((!in_pf || smaps)) && file_thp_enabled(vma)) - return orders; return 0; } =20 --=20 2.43.0 From nobody Sun Apr 5 16:28:55 2026 Received: from CH1PR05CU001.outbound.protection.outlook.com (mail-northcentralusazon11010065.outbound.protection.outlook.com [52.101.193.65]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id AC4963368AD; Mon, 23 Mar 2026 19:07:03 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.193.65 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774292825; cv=fail; b=n/WLUSXz/XcJdA6sbcmfr8ofBRiM+80fNwM/ca0N54jpz0Xgp3oZCvOydLFDucBxgNpH7JATAweJtr8G/wGRcxgnAij+bLN4t0U/nfLnXx2+6HsdxXK2DZ1LTapwTodwB6h9BkMpef6Gw3l2f2eLCy/T0VxjzD0cuh8mQdJsvWs= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774292825; c=relaxed/simple; bh=cjqG4q4Gps0IIgGkPtrHKjmucrLeVNioajDzDzWB6DI=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=A6CNFYSLJTf5KKquwOf3u3aJo+bgWxmoAwYWae0K9nFif9fSmjL9RPJKGeb+XYWDsBLPKDzHIIap/Y6QkxSySWgd1eZZBl0l/2uWcMXdQQM547z+uKhmrbE3WlH6S03cSo5wbGVc5DUEWy4I6x53N/S4Bu0PC/ZsPuekxIzPTcQ= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com; spf=fail smtp.mailfrom=nvidia.com; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b=SR7kVzOy; arc=fail smtp.client-ip=52.101.193.65 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com Authentication-Results: smtp.subspace.kernel.org; spf=fail smtp.mailfrom=nvidia.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b="SR7kVzOy" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=Z7bqPZtULMxNxSQ6iRfYD/ZitzJZPXp+nIcLBqKH0PAel+68bTMC5+xrOXo47VGJsO+kzxxa/Ou1dJsxhhdxEE9MHf78MFnHXuF1chG8uaqdySCxe0cXFaj9K2alN7ZGqCWA5Zi9hjqDvtf0Idnvp8VOa/SZGBPHnIXG2RZAjHKl2JWGDXv1Cv4cZqElmRAXjoUiSYWp88tb+gfcwcGdQ82lPOHjahnXP0iZPS6SYqAtAk87XbtOBmQqXKxUAkVKcZd/fKKr2+fo35TZ1sy1RTX7UmZgYptiuWPKojH7n2g4d+D3xv/gvOT99g2/y6mIdaZgBwXehyTQCcVQeMaG9w== 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=ceP4c4F8tMY+jMuTWAavGqqrJRCSI3h+rBcNc39qDLQ=; b=MiMpZaigvQv2no1mXVgjroOffQGw7GG5SPSFfl4bXQ0Ei23Eeo3OXVkj2kJcORQPK5/c0XDHxqml0sYcrUzw7LY9wGEQ/MyuEtHq8hu/JNrljVFEBq3uXrsVWOkn9UdBFadi7joloynGCOajJzY5F9q9eY+xd2FnBzGYZ6TtOKEHdLnn1BEseA1llN92tC3deW5HgtM260YbRXsPu+0rXklWkybbeCf18tvg41gg1GMkeetnRfI30S0OqU+KFt6LkvrwVaDIJ5zuiIthbcc+FKy7dSSBTL5NwYpPDRv3CWIPnJI2Cwik/AG5O48++qb7zvha1IE6aVmkGUHw1250ig== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ceP4c4F8tMY+jMuTWAavGqqrJRCSI3h+rBcNc39qDLQ=; b=SR7kVzOyWqtYsNXa+yajRzCKrs+xOA5ImxzIoEvVsITAZhSzbVrku8PctR5PrsYVcdrF+v4HTCZZmFACoEBuIIXcEib2EMCFdIyFxtjdsaih4v+pJZU7wxn83vIB4i/nCHN6q4+3tJj0Jp4aCmkrph2mTMl2jz4Jcp2oXY36F5zNJQosDQ0jbdRLtmSH/BBL7hKxV+m/lXG5BiLopHcPmB6XBbWhdm2mnCVPlVSqG4/Pz6J9SIqhe5Q4rAWtK67lCTtwIwHWWRZR8+3MS1nFta/vH0koD/yRFNSHBn0GNnlnuVWhyfscmZGSTbVUIkaafm/Py6gOtA9Bwno4OgpTNA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; Received: from DS7PR12MB9473.namprd12.prod.outlook.com (2603:10b6:8:252::5) by SN7PR12MB6813.namprd12.prod.outlook.com (2603:10b6:806:267::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9745.20; Mon, 23 Mar 2026 19:06:55 +0000 Received: from DS7PR12MB9473.namprd12.prod.outlook.com ([fe80::f01d:73d2:2dda:c7b2]) by DS7PR12MB9473.namprd12.prod.outlook.com ([fe80::f01d:73d2:2dda:c7b2%4]) with mapi id 15.20.9745.007; Mon, 23 Mar 2026 19:06:55 +0000 From: Zi Yan To: "Matthew Wilcox (Oracle)" , Song Liu Cc: Chris Mason , David Sterba , Alexander Viro , Christian Brauner , Jan Kara , Andrew Morton , David Hildenbrand , Lorenzo Stoakes , Zi Yan , Baolin Wang , "Liam R. Howlett" , Nico Pache , Ryan Roberts , Dev Jain , Barry Song , Lance Yang , Vlastimil Babka , Mike Rapoport , Suren Baghdasaryan , Michal Hocko , Shuah Khan , linux-btrfs@vger.kernel.org, linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org, linux-mm@kvack.org, linux-kselftest@vger.kernel.org Subject: [RFC PATCH 05/11] mm/huge_memory: remove folio split check for READ_ONLY_THP_FOR_FS Date: Mon, 23 Mar 2026 15:06:38 -0400 Message-ID: <20260323190644.1714379-6-ziy@nvidia.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260323190644.1714379-1-ziy@nvidia.com> References: <20260323190644.1714379-1-ziy@nvidia.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: MN2PR14CA0026.namprd14.prod.outlook.com (2603:10b6:208:23e::31) To DS7PR12MB9473.namprd12.prod.outlook.com (2603:10b6:8:252::5) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DS7PR12MB9473:EE_|SN7PR12MB6813:EE_ X-MS-Office365-Filtering-Correlation-Id: 224571ae-d48b-40d9-a342-08de890f59ad X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|7416014|376014|1800799024|366016|22082099003|18002099003|56012099003; X-Microsoft-Antispam-Message-Info: fVfWokWQjmDkGrsIHCBehJlI3zx5DodGKcABKysTGpcXb0NdI8nEIm4VJwf+e681mnxchxu74RwzQFK1ueA2SO3aiw8zdklV2m7/D0SAbb2GlinFgU2jXVmA5aFs+NjHMLyIyXZ6/miXM5IARRIdYlQ1KwiTG9WdC7SAi1rbQ9Rf1meaP0Bood30qgJvrNAFdWXMzaSQJXlAL+6vcwnElm/CqJJMbZEni78Pp3liLI+adS8wHp0VEcoE09FDAQjjvdmN/DiaX4We7YNds3RUYkmrCJtKKmUDtm1phJuryMBgMTTo9vJc7XRcHnFIJuEnCM6yPZQfmDObmpcqBTmJLSr2B5UEe1TAO+6KqHwOPVJpICfLmQCcSMKYpBrIFxdLUe/MCsIVpLI3SYqIFRjs/MEM/aG80UM+TRHgUPLVaKBIAWWTdO4NO5mOYTJxUEeZ5HCZUXFbNkmppqO3b4TNBnM5No6uhjStEyFlS8lw8V3s+t2cjJjLpD5Cz1c4f7ckPO6YgsyPg1VOjVnxpT+1nAPsweVnpZ7yZieYpp8yR47CksPSbb5i7JCyHIQmfZjo2wE734Wf7VyohAWkUJI/GLtZVkoAU00GR/gTlEDwN8hiEG/1jIUX/e4ykGBZNTY+CRMU34V7x8r5DZ+VncC5XqlNbIicDtPjzmUFgHLCcCj52kmanOLjYn/8OHfMMyvSetDWicnPgK7TVaGao/NEclp200LlN7wiy3nzQZcriEQ= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR12MB9473.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(7416014)(376014)(1800799024)(366016)(22082099003)(18002099003)(56012099003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?N1zItPJJSRToN4zwSf9VkMFT9pA1QzucVPKT/5E8Io9W2Q/TPjGYnEHBFE5s?= =?us-ascii?Q?iQ4ac+6uVsNwMV7KvjgBM3ZfZ5gAFbZQw0CjPv/NDARAJfHwj0FC9NMArS33?= =?us-ascii?Q?FK++ehH1kClMoLbHKUR2GZ1EKdOmbnntsZw+oKybtRKXQ2KWFhEfX7ULwXWz?= =?us-ascii?Q?+1/a1V5lfmV3uc2RO867vzYfdnP0L42tdP3AgnRdUA+KylE1h7MuXa3nYfAd?= =?us-ascii?Q?akJ03sQsfSQ7kWkX7/0s/SZW9tAGUU6mMB4z6VKa2d2L7ptFumR7ll91aEf1?= =?us-ascii?Q?BBRp7AnZkPSt2DrNj/Ch2uM4M9J0FR0YWtWEvuJVWrKaTrm/XeEvb+QJ0Ndg?= =?us-ascii?Q?lP5OZpVlSALzEPvRDDBcxaqPwrqvNL6XF4rAYh8Do9H8vI1Qx8EkK9O42OlU?= =?us-ascii?Q?VJ2oyNq1VD08oSm7BuI4FwZ4ZdW07UowAH38qrolE4QksiIggPxH9t2AbdwS?= =?us-ascii?Q?6k5yxIVcJGkEG3yhliOV7Xar5/gszVyAvsDrJKjlobAcMLSEHl+7KziyocQg?= =?us-ascii?Q?/krVChvE8KNWtC1TBzcTR1ohjVKtpWTvnfaxa4wkbxcOFSG8bjmaGEywr9+8?= =?us-ascii?Q?CfJFSo0ZgmB+RUvfMzMqvc7V1ykoZAZc+whW/aHron28kxw4qzaSi1gn4OfK?= =?us-ascii?Q?VcdV/jc7YSM8agyJzYzcrnqzofQXWs8hvlG2hnAZIrgo7T2UAqWyYUwPgmNx?= =?us-ascii?Q?ktmUjoQc3B8T9gv89u7VgkgVeoWs/CmuAnHTDPEpYfU0RSxoEehLc2vDfGyb?= =?us-ascii?Q?WsXBSFW78C6/mWFNr4cJEXtREEWh1FTA2k425Sq7gsnS7nxXzV0ckCmVAx13?= =?us-ascii?Q?Lxay2UVwDLv73GIWBcj1FLn4B3EOi82dxpOXF0MpoTd9JN3lT4aIpX0wRCJz?= =?us-ascii?Q?JMRi8fjs0qLaWYTFeNqOBCFJoDjIj8Nrfyo6Id2NRGaRRxF09u3Yg4mfDiod?= =?us-ascii?Q?X3WEct5B3KjDF6+MS6Vqr7pa/yFdFtaxDKsFnK4fuE97bvbn/m+zvWtKmX2A?= =?us-ascii?Q?ADdvib9IDMLyTax8+dq9NqvKuKIO3WlwhryUz2pEF2NLv/A/HM0emH0cFdS/?= =?us-ascii?Q?9zrXk3JL40m9gsqrvbWJF+OQ7PV4UMT1rXJrEDmj+TyGrM+YxEeQRpfLNigZ?= =?us-ascii?Q?9icZLiBi6nLzLR2gOEeY8w2oPzF3F1n7vwfQXESS5VKsTjqBgR8tRBCvXcsj?= =?us-ascii?Q?DRQ+1LdTZw1xTjLXaPKs0kUyXlqm6he5kY9FVM0T7h+K87O8A26kyp+gJT8q?= =?us-ascii?Q?b3muAh8wf3Z+ah/51fLzPCUhl4n/L+P4m8ZUE6Yrg/FPusdLLPIgPIN+xlux?= =?us-ascii?Q?/hgADEKEmdo9ktbIrL5mYpasUz34BdSkmTeh2EUgu/jk3ajXJNA9xaWnVJkr?= =?us-ascii?Q?lJ98yj+ROD1dwhqv6AKswMVNUVTUZ7vAvwB1rzyxtSnM5ynMFOqtk9cx2kvs?= =?us-ascii?Q?JiKqYrWIZmyojAfWLyLKDn/TLpRPK0UBSeABesjwDefnsDZL/gu8eeNjHD5m?= =?us-ascii?Q?vvjJYxM/tcE3XzTTvFdlzdqVMvVsss3oNUrAXlfJQTX7pxiuR0sIhVSkLMzk?= =?us-ascii?Q?QlBpWdRMO9EVq06uCr8FvBWlSFrbkO6CgkSdO66ZwI3y9eVo21efwjUOjXVG?= =?us-ascii?Q?261t9yyVvVA1CZUxkBOS5uvr2DuGpJ3xhle77ou8iH9Hs6e9LWG7anNvttsu?= =?us-ascii?Q?y7owb4IkELu5nzckb9Z1BJf5vDaptHCVHKM1LAS+udJ/cGOr?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: 224571ae-d48b-40d9-a342-08de890f59ad X-MS-Exchange-CrossTenant-AuthSource: DS7PR12MB9473.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Mar 2026 19:06:55.6572 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: jttiNnu6rw7/th6eaLCNnyKPm2qDVyWWQmW80GhCRauIiPiIAfCJk4Z3fiXciYfw X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN7PR12MB6813 Content-Type: text/plain; charset="utf-8" Without READ_ONLY_THP_FOR_FS, large file-backed folios cannot be created by a FS without large folio support. The check is no longer needed. Signed-off-by: Zi Yan --- mm/huge_memory.c | 22 ---------------------- 1 file changed, 22 deletions(-) diff --git a/mm/huge_memory.c b/mm/huge_memory.c index de4a1e6ce376..c7680787409c 100644 --- a/mm/huge_memory.c +++ b/mm/huge_memory.c @@ -3710,28 +3710,6 @@ int folio_check_splittable(struct folio *folio, unsi= gned int new_order, /* order-1 is not supported for anonymous THP. */ if (new_order =3D=3D 1) return -EINVAL; - } else if (split_type =3D=3D SPLIT_TYPE_NON_UNIFORM || new_order) { - if (IS_ENABLED(CONFIG_READ_ONLY_THP_FOR_FS) && - !mapping_large_folio_support(folio->mapping)) { - /* - * We can always split a folio down to a single page - * (new_order =3D=3D 0) uniformly. - * - * For any other scenario - * a) uniform split targeting a large folio - * (new_order > 0) - * b) any non-uniform split - * we must confirm that the file system supports large - * folios. - * - * Note that we might still have THPs in such - * mappings, which is created from khugepaged when - * CONFIG_READ_ONLY_THP_FOR_FS is enabled. But in that - * case, the mapping does not actually support large - * folios properly. - */ - return -EINVAL; - } } =20 /* --=20 2.43.0 From nobody Sun Apr 5 16:28:55 2026 Received: from CY3PR05CU001.outbound.protection.outlook.com (mail-westcentralusazon11013061.outbound.protection.outlook.com [40.93.201.61]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id E62EF33BBCB; Mon, 23 Mar 2026 19:07:05 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.93.201.61 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774292827; cv=fail; b=G2OJ0om1uNtAZ3cnGXw5WkbQkjLZaoVkhE7Gq0DJPgIAkRCWh6MvAz0nbt5KqGIxXM1tjNGwBYEYfXlNOgz5Gm33eGFwSmyAKVGUMHE/rgRFhm127K68Wfz3gdaYtS10EDbDiP6ym+ef/fozUdh8RUnIANkV84NRZB9RF+7id8Q= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774292827; c=relaxed/simple; bh=tq5FqUm33eEFRQuVGeLBa0Lix1W8TbXaRcJT9+JDm2U=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=MvEdugED2C81w6t5tExgWs9fRsPN9B/kO32qpJNJCa1tfPn8oGhQF7ODULZKLEEnxXXm+Kd8ska8BrS772tIrnKXKTY5tZ2j/FCkgrB9bQs4TdYvFniT2spq17lbn5POFiQn1shGz9CHK8bsJqKWSRbKVkSkF/JL5DrJyJ2TyKM= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com; spf=fail smtp.mailfrom=nvidia.com; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b=LDJWCYSj; arc=fail smtp.client-ip=40.93.201.61 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com Authentication-Results: smtp.subspace.kernel.org; spf=fail smtp.mailfrom=nvidia.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b="LDJWCYSj" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=HKBemAj+bCeG/AXWdsImyyrQKzgs3uySh0MhWCFWa41U2yB/rMTqf/ahwpl5T7fVgvUzfKL0cWFejiR7JH+GMV8G9MIytsJer8p+L7Noe/lSKtQmSXdhTsHpI42zvZgEIZQYMIphgFBwEMleX0Lb0Fcpe1gQZmmcLQi6rURapVb0D3taoOLxN+PzW9GJNUqZLoWei1OHiYtuSxGn5ZtZ9+vKEcs9fZ+E1YTgSAIwfMOf0GjR1ziHmrytwECFCpnp1EGjKrVILNU3jlOT3NC7tzHA4OZhSbSRNZJB8W9v8+HfccxqK1z1lGutyyWWqmwUlOfGJvvzY/HY7JlzYp/ifQ== 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=fwYUfDFv5xgqECm2JXLwGqY5p8gmmW4sRFsTjJxAK78=; b=Ly9wXSWN3aHklbsHt8NJkgEj1X3C9VfEGtroiLwZuafQauIH24JtRIioJ05dIzQYQ70aFGNwuvxK/zKH1Spvv4Lysgvtowin+HVxd1crd4ywlptZ2n2HAZksDNC/I0w6Rkxwu9hRYXwWLN/T6jkHtEPMB2D3fMTs4KbggtGgxtY2BgSICiTORrYtfWorv8TEfXGs/KYgMIo8530CfKap2q2A05IHj/IhRBVBNB85u7l01a5HqORAycnPwVIxZU+HNjy0jXbDklqQZGVIvBf65cSZnxFi5ML3NubIrviryuW7OvEDOjOYzX0wORBNCX+fZ0k1RzgvfWss/AU2HnOVug== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=fwYUfDFv5xgqECm2JXLwGqY5p8gmmW4sRFsTjJxAK78=; b=LDJWCYSjXTukADWJQhmYks2bJUuX2NSIeRNQWzXdiPTLVCLAOb953iacG3DkADRSYrDIwvT52dCxNSkxqs3FvOvJTEOK6YKnnUr2VgDRVJob8BQvXbOSLJlrWDVDXfXMr3IMpZuExhVMOy36bIRs8KxpNZUC/VkKjJ7aXgUZgosGv3msHPCZaa2zm1tFesI8rLPhU3wj2vodvymloSIAY9hMpGEDOwQwlUw313OF+0ciwkzB6KRLthNkWfWbrwtCdrV818pQqQK57Sk4MQdDZu0ATEkaOiAsScRpZKYBsaOZm8lzJmzBPLPVl628bi5dN6zE2iNE/kNtq9w32DilAg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; Received: from DS7PR12MB9473.namprd12.prod.outlook.com (2603:10b6:8:252::5) by SN7PR12MB6813.namprd12.prod.outlook.com (2603:10b6:806:267::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9745.20; Mon, 23 Mar 2026 19:06:57 +0000 Received: from DS7PR12MB9473.namprd12.prod.outlook.com ([fe80::f01d:73d2:2dda:c7b2]) by DS7PR12MB9473.namprd12.prod.outlook.com ([fe80::f01d:73d2:2dda:c7b2%4]) with mapi id 15.20.9745.007; Mon, 23 Mar 2026 19:06:57 +0000 From: Zi Yan To: "Matthew Wilcox (Oracle)" , Song Liu Cc: Chris Mason , David Sterba , Alexander Viro , Christian Brauner , Jan Kara , Andrew Morton , David Hildenbrand , Lorenzo Stoakes , Zi Yan , Baolin Wang , "Liam R. Howlett" , Nico Pache , Ryan Roberts , Dev Jain , Barry Song , Lance Yang , Vlastimil Babka , Mike Rapoport , Suren Baghdasaryan , Michal Hocko , Shuah Khan , linux-btrfs@vger.kernel.org, linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org, linux-mm@kvack.org, linux-kselftest@vger.kernel.org Subject: [RFC PATCH 06/11] mm/truncate: use folio_split() in truncate_inode_partial_folio() Date: Mon, 23 Mar 2026 15:06:39 -0400 Message-ID: <20260323190644.1714379-7-ziy@nvidia.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260323190644.1714379-1-ziy@nvidia.com> References: <20260323190644.1714379-1-ziy@nvidia.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: BL1P221CA0019.NAMP221.PROD.OUTLOOK.COM (2603:10b6:208:2c5::20) To DS7PR12MB9473.namprd12.prod.outlook.com (2603:10b6:8:252::5) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DS7PR12MB9473:EE_|SN7PR12MB6813:EE_ X-MS-Office365-Filtering-Correlation-Id: 3d6a0a9d-582d-4aab-3484-08de890f5a72 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|7416014|376014|1800799024|366016|22082099003|18002099003|56012099003; X-Microsoft-Antispam-Message-Info: RcPh1Yz4DXNnziOJ8JeVbtoheSRMQCR5MfoV7R3zsP5pSaiwLgQ9silntAqrTBaJbeEqjCyt/bNKnzFvs0NcJ8DxaZfRzWLf4AFrXTq8/FRoLe4V7PxevBFkxmbwSzlnMGSzatLyteOTmCf8qGnpuwSlUa1sTapoJoz7CS0Cb5i+54lxoWPE9Bu7X56LGt5WnhUITEAOxWM/TI8w9jo1bI2kJ01I0kphm9yrHgGg43HX2KQ1oY63+WLO/xqr5SSZMSfvBtYmFfcD3O4lTEuI6RRgABP954pU0qWXPAWXa5TWdpcPKcdoz44RFZTHOn+UGJuzwEl+7HVDLif8HfE3fnlT+zea4WX1ErGf6WP8AFBICkVJRNMRUOE3h9p50O4XAzfB4qhOyEQK6OnAddg9OckRSSH2D3DBibPxWfKlQrunkhYsYT2C7CI6rcCZmK2wPqP/04IGnOpylQV3SZStvpEvptkjbUDhuXH0CxCH4sBQIgJ9dD+RBR7iB/1mmIktc8SP/KWHwGRXPBAGKmskgMq26rrlfvc7ZWRf7lksPk1CcEA0ToXREms1tc+AUr+Tv5qqaOdNBF/Yn+xaeYf1Mk6rXYrQaT7WUe1Cx4feLCqxTiV792TPtLWTNFPBvMpmNaKilyF4SpZppnNSnL14/HvbgCGQiRyGldLfvH6MfqIatwtnnCSukNeiik7HOhEYMDSkri+nlUS70gCcZoAztwhXIVLzy6K7NdTXZkdOqm8= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR12MB9473.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(7416014)(376014)(1800799024)(366016)(22082099003)(18002099003)(56012099003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?2YbIPDzkm/yLs6RPhe7CN7bxKRHqn57HtdqqQ2O76uOE1yPVCcENaStzrM4K?= =?us-ascii?Q?NGzJ8mo2H4ekcBapxL1mPGJziyinCyVJ8EoEj6jom77Q69hLu6PxcTDU6inC?= =?us-ascii?Q?z5uZ5S7PXjbDntWpsswzrku0pcy0wI68g2N7fMGTy5wjxVpvjOYK798G9M9w?= =?us-ascii?Q?1ispwCAUStw7zRxZJW9jzDmm0E3CW2uKzefZ7Y6A2hY7AG9sUCPXsXRL5ePL?= =?us-ascii?Q?JtRw3TTolVV/DVtE3JQHf6ClUKUKbpO6Rggq2HCpNVWRykbvgHYute0zuBiI?= =?us-ascii?Q?NnaRtmdM+EeSafv8GxgBYo9Vzwpp1Hv0t1o01R2+JJ6X8Uvf06NTd8Sw3hu6?= =?us-ascii?Q?s+wCWXsSevdZ85wAYkLfBzlXhUU4vwBWxgVdQpcRs0OgXk2FZZas4nya1+Nn?= =?us-ascii?Q?kv8b+Wuf+SoCqVzw/dCQR2CzZESliviTJo61232aKAyjbTMfVpwkIONPx8Ba?= =?us-ascii?Q?IFOKWehIeYACT6GT9LCGRq731cIdtsdwpHw8oIpskwPBPVrc/Ew/je3H2qSr?= =?us-ascii?Q?ySWQUpzUvYjtlDYmodLwwE1SKJj1NX4BlvsudHi0vHR5svVqjABGdRcJ6nZ5?= =?us-ascii?Q?ibtQ0PbO9W6Jzbj4krmbMejgtFHrpmq+pi7K2kku6P/to0h8D8b/3AlBZBm8?= =?us-ascii?Q?2HxrzgYIka72OKmpo8Y8QU4b0SpgtTTgLUqmgil20M819tOKjVK8Lljq6HYQ?= =?us-ascii?Q?tliYodw4X/LWvlHmbTYynyoDxKmSCnEWp6ROpuZNoC65O26mndWQ21+rT2Kb?= =?us-ascii?Q?UVDp0sHk+DdJ0rYThpvsi4f3zzk29kQRhO4fv1nPlTErOp82rXl0Zcz77cE2?= =?us-ascii?Q?DzpcHttx6SagebtDQ5GU+wscLuic1pwFvr/pt2DuonSaT4tWl0/UeiCYI3an?= =?us-ascii?Q?VhUQ3f5ANIi47oZHH/7fgq+h7jQSW+Bhrm1ZKkJrDd4NfPlMJGYBN5JqN3SP?= =?us-ascii?Q?9rgsjxtQwQIgMsB1iOOFlC7myl4L6D1bvCQVLjDTeHMomTNkEFYf9OfBoLel?= =?us-ascii?Q?zVvNWdQN+vznpbFONNTxP1XV8CmjKFAAr5Lm2kxvF2rFo+1HBeD6IAPIAoc1?= =?us-ascii?Q?ZFyhOO0BJICevhRR5T8HlM20NGYDGx8BqbvwwRsp+vDgJhnGe7FSqvic0Biw?= =?us-ascii?Q?HTWIKVO1okicEhKr41RMkz9+v3GEFzYHPqiUaa2mLHLSzN11bxmcsKVDf0/I?= =?us-ascii?Q?m3RJ8u87JRFhRs5gOKXer0nx+XzsrCTgkBXWfAqmwKxvq0Tz5WPYWEBzksm3?= =?us-ascii?Q?Bk7at04WBLOSuvBX5qvXH5F2iQmicHU4Ohq6XkQvL8BgbPGKUcplTRYpfNYp?= =?us-ascii?Q?17mQStsQeRCEuBgeXdG6Sez/VHBA1P5rzJSvX4Bo4/Dl3bnG6ix7Lh89BmLb?= =?us-ascii?Q?qfDVKsIKE/NiI6i4lVDEmmFpA4mPawTjN0sJPkGQPQvaLj/qsN/f40TY7WOU?= =?us-ascii?Q?ync007FWeEHOJZzUYeGem8p3dmoK7fTlY8S7DbGsTtKjK1PyMGo6WAs7jvQp?= =?us-ascii?Q?8ZjMSdlKHbmMI5MkJ6YJ4Fc0Fp14ZdZ/8uEAQoMIP+J+ve7GJQYgH+vVpCR4?= =?us-ascii?Q?t/+y2zW2+FW2h664Fel/G0muHyQp/KP2zumpgSa1k0mzyXtzKsqbR5zwlUaE?= =?us-ascii?Q?TxL/7uPaXczZd0k68nY+5k59TRhnqXIi81D7nfiYEstuHQNMSpItOkonLiNb?= =?us-ascii?Q?pJ+5mgYrEj6ovCNWG9mhczv6qPnriuhFdn72DByN2c05yjCW?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: 3d6a0a9d-582d-4aab-3484-08de890f5a72 X-MS-Exchange-CrossTenant-AuthSource: DS7PR12MB9473.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Mar 2026 19:06:57.0031 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: +RRJquhg9Np/erhHs53HUPq951/3FqBPUofoq0I3j1mJ6iP37H7M/rmiBGKzD3Bs X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN7PR12MB6813 Content-Type: text/plain; charset="utf-8" After READ_ONLY_THP_FOR_FS is removed, FS either supports large folio or not. folio_split() can be used on a FS with large folio support without worrying about getting a THP on a FS without large folio support. Signed-off-by: Zi Yan --- include/linux/huge_mm.h | 28 ---------------------------- mm/truncate.c | 8 ++++---- 2 files changed, 4 insertions(+), 32 deletions(-) diff --git a/include/linux/huge_mm.h b/include/linux/huge_mm.h index 1258fa37e85b..77c8f73f8839 100644 --- a/include/linux/huge_mm.h +++ b/include/linux/huge_mm.h @@ -389,27 +389,6 @@ static inline int split_huge_page_to_order(struct page= *page, unsigned int new_o return split_huge_page_to_list_to_order(page, NULL, new_order); } =20 -/** - * try_folio_split_to_order() - try to split a @folio at @page to @new_ord= er - * using non uniform split. - * @folio: folio to be split - * @page: split to @new_order at the given page - * @new_order: the target split order - * - * Try to split a @folio at @page using non uniform split to @new_order, if - * non uniform split is not supported, fall back to uniform split. After-s= plit - * folios are put back to LRU list. Use min_order_for_split() to get the l= ower - * bound of @new_order. - * - * Return: 0 - split is successful, otherwise split failed. - */ -static inline int try_folio_split_to_order(struct folio *folio, - struct page *page, unsigned int new_order) -{ - if (folio_check_splittable(folio, new_order, SPLIT_TYPE_NON_UNIFORM)) - return split_huge_page_to_order(&folio->page, new_order); - return folio_split(folio, new_order, page, NULL); -} static inline int split_huge_page(struct page *page) { return split_huge_page_to_list_to_order(page, NULL, 0); @@ -641,13 +620,6 @@ static inline int split_folio_to_list(struct folio *fo= lio, struct list_head *lis return -EINVAL; } =20 -static inline int try_folio_split_to_order(struct folio *folio, - struct page *page, unsigned int new_order) -{ - VM_WARN_ON_ONCE_FOLIO(1, folio); - return -EINVAL; -} - static inline void deferred_split_folio(struct folio *folio, bool partiall= y_mapped) {} #define split_huge_pmd(__vma, __pmd, __address) \ do { } while (0) diff --git a/mm/truncate.c b/mm/truncate.c index 2931d66c16d0..6973b05ec4b8 100644 --- a/mm/truncate.c +++ b/mm/truncate.c @@ -177,7 +177,7 @@ int truncate_inode_folio(struct address_space *mapping,= struct folio *folio) return 0; } =20 -static int try_folio_split_or_unmap(struct folio *folio, struct page *spli= t_at, +static int folio_split_or_unmap(struct folio *folio, struct page *split_at, unsigned long min_order) { enum ttu_flags ttu_flags =3D @@ -186,7 +186,7 @@ static int try_folio_split_or_unmap(struct folio *folio= , struct page *split_at, TTU_IGNORE_MLOCK; int ret; =20 - ret =3D try_folio_split_to_order(folio, split_at, min_order); + ret =3D folio_split(folio, min_order, split_at, NULL); =20 /* * If the split fails, unmap the folio, so it will be refaulted @@ -252,7 +252,7 @@ bool truncate_inode_partial_folio(struct folio *folio, = loff_t start, loff_t end) =20 min_order =3D mapping_min_folio_order(folio->mapping); split_at =3D folio_page(folio, PAGE_ALIGN_DOWN(offset) / PAGE_SIZE); - if (!try_folio_split_or_unmap(folio, split_at, min_order)) { + if (!folio_split_or_unmap(folio, split_at, min_order)) { /* * try to split at offset + length to make sure folios within * the range can be dropped, especially to avoid memory waste @@ -279,7 +279,7 @@ bool truncate_inode_partial_folio(struct folio *folio, = loff_t start, loff_t end) /* make sure folio2 is large and does not change its mapping */ if (folio_test_large(folio2) && folio2->mapping =3D=3D folio->mapping) - try_folio_split_or_unmap(folio2, split_at2, min_order); + folio_split_or_unmap(folio2, split_at2, min_order); =20 folio_unlock(folio2); out: --=20 2.43.0 From nobody Sun Apr 5 16:28:55 2026 Received: from SJ2PR03CU001.outbound.protection.outlook.com (mail-westusazon11012048.outbound.protection.outlook.com [52.101.43.48]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 585B1337B97; Mon, 23 Mar 2026 19:07:04 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.43.48 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774292825; cv=fail; b=Yde+AN+jVpX3qXoYp71GIPA5gKltzMQL1wiNLfa0qgfL1ZbDgjENojuWuMZQJAYEs+MqH//PtmG9CJtWKFIqt+9Qtqv/0vmncyKAVhBjwemOdX6la6w5kgaGYP5cbMvRR0cT+66j+29BfaKWN5WPSurXIDoOW15DK9bMyQNSuuA= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774292825; c=relaxed/simple; bh=IbADcvJG7GeL1QvqXjRQkCuVUjKERLuIEGz+3dgJG9Y=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=lQBMg84mmn9V5F/tzf1ihYSywiBfHPjRMEQ+6UgJqf2cPCyQ8h23lLBYv1bwGxTaL4LbCx8PLzRx8bmkTvzmgqiPVK1+GdNuMewsEv++WZaC/nLU20lnQBXIosZpSLr106hhwsf3hnGI8U3YbVKYiiimyWi8HKQgPntWJxwAiKM= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com; spf=fail smtp.mailfrom=nvidia.com; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b=pFleVGoB; arc=fail smtp.client-ip=52.101.43.48 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com Authentication-Results: smtp.subspace.kernel.org; spf=fail smtp.mailfrom=nvidia.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b="pFleVGoB" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=ayvcpbzg40k1GCs/vODnm+loT0IBYPKkBXGlvufIDUw60jfo3TLuDf1hoQ0En8sB/CuIbIW4g3c3XGsATQK/h2YMjNYp0PLU6czop5Pp6Zq/YRD62JRdvgBeNaBf43EcLLDgkJ3rXYwBgAvWSm7IEvAuZKJ0Pra3+brye7MB7BCrgRR4ikA2wXajcWASnQtoAr+beEOi5BNYIDDV1JxaVdCOAiEb/WIc6UBmW95MkMF+iZznoL1sjc/2qhJzQfhUsu+PC/W9XTfclyy9XHxhFxKKOrY7gaAPC2MLThGbAsALyOJqAk4U5RwR3lD//aCqeiJiDYoT+8TTHrJwqkoETg== 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=D8O+f7qd9atNjedwWxjNpgH7Bw9TaVnZDnBEr44WoG0=; b=JfNheZFZrYHFE8RfdmyKlb7AHj5DowQqlXcpkx6XXtQ7aS+AmodLypa8TK4OpGydPzjfM/y/Ag+uo9Udttzijekc18g4OJJbLT+P2LcxqO0ob+NEgSQn7Jq7Mm/ld2gCaK+tfQ2ETGbuaw2DJcklaHPwrgRoePbuvC8+qWptge05bDb0xTRRNNVNaRt7nNvVHG6fktgVu+MUZ09MqzKLJYdLHmUt49U81I5KQJD5mHqSr8kY2ZUxXlRGkHHFuF8wEa0RaAcyYq9n30R74jvZXTiLPrJ8KDf/OX2zHeUdGdLHCtGGBRcWlXg6TDGVJ7xPPqSNHHh/XdIjY23HwQr9kg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=D8O+f7qd9atNjedwWxjNpgH7Bw9TaVnZDnBEr44WoG0=; b=pFleVGoB83iN0p459utRt4ZfnEIW4iwfQRG+Say6uZZyBT3Z1kqxIb3Mf5lMbzn1TlOIi8Xn+jNl+HPOobXkxOykIAAk7Ghj3ntaDH1o1Y/RUw59fc1TMNwuPh2znV7Iu+Fv0tHAGyoWjPepjU0jLgDqQjye09tX987XBAfcMl273oKXr/C3lpEMkBkGM77pt/SB4Kil8IvCMqtLBo88iv30xHnH1SurGHfA4NJhNBUfR2Yu4Gdcgt3RJhWDLoO2TwcOrUhKWOOsE2w8W01p868axRe+koNToj7Y4PZ3Z5myd01KAfMOWpfVVK0SAHUK4IpeUFljISoeJuhnVVrSUg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; Received: from DS7PR12MB9473.namprd12.prod.outlook.com (2603:10b6:8:252::5) by DS0PR12MB7607.namprd12.prod.outlook.com (2603:10b6:8:13f::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9745.20; Mon, 23 Mar 2026 19:06:58 +0000 Received: from DS7PR12MB9473.namprd12.prod.outlook.com ([fe80::f01d:73d2:2dda:c7b2]) by DS7PR12MB9473.namprd12.prod.outlook.com ([fe80::f01d:73d2:2dda:c7b2%4]) with mapi id 15.20.9745.007; Mon, 23 Mar 2026 19:06:58 +0000 From: Zi Yan To: "Matthew Wilcox (Oracle)" , Song Liu Cc: Chris Mason , David Sterba , Alexander Viro , Christian Brauner , Jan Kara , Andrew Morton , David Hildenbrand , Lorenzo Stoakes , Zi Yan , Baolin Wang , "Liam R. Howlett" , Nico Pache , Ryan Roberts , Dev Jain , Barry Song , Lance Yang , Vlastimil Babka , Mike Rapoport , Suren Baghdasaryan , Michal Hocko , Shuah Khan , linux-btrfs@vger.kernel.org, linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org, linux-mm@kvack.org, linux-kselftest@vger.kernel.org Subject: [RFC PATCH 07/11] fs: remove nr_thp from struct address_space Date: Mon, 23 Mar 2026 15:06:40 -0400 Message-ID: <20260323190644.1714379-8-ziy@nvidia.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260323190644.1714379-1-ziy@nvidia.com> References: <20260323190644.1714379-1-ziy@nvidia.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: BL1P221CA0029.NAMP221.PROD.OUTLOOK.COM (2603:10b6:208:2c5::25) To DS7PR12MB9473.namprd12.prod.outlook.com (2603:10b6:8:252::5) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DS7PR12MB9473:EE_|DS0PR12MB7607:EE_ X-MS-Office365-Filtering-Correlation-Id: 43cd01a4-53c2-4593-96f3-08de890f5b46 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|376014|7416014|366016|56012099003|18002099003|22082099003; X-Microsoft-Antispam-Message-Info: LKvJi4Fq9sPqjbXB8bxouSBbZSPccPe5FcUMvg/H10UBg3PLb2P8svDslGw46lp0yCVLqOsPGo53uFa8QZQbM7ClcYlU+mXNAco4560famdHI7/gMKfiON9E3cixZVVR1qf2Ais9SXGez9GS50yqPZ8gg0u3sWVuZjvSTV6HwIzJrf/MyOdzfj3de9wWRB1n6VTkAPrW33lSlm2FbBLj7DAn0tnwfyPcAYi7tu4ideG/kyZRG/5bJzenknUPUoCi5k/RiejWVnFWR4zvFDR5XCrlFeOgVc1LlkmPh5pDFV3NoF9RQOKMSoWWXFhPe7Rj48wyasI/bsEE1zegzhLQAMEQZF+OA4nJiOJ8rgKcRo7VcjgxxvtvC06OGoihvHZAw5DzH+biypulNVdtjIa4Dg9yAih9fXqRa7RfUgygkWj8USTQvBE0sEX+bFWJ5/89n6uSN/Qx0KZ8uZ6REkiNEslmWnSGatEqfeougfnpqFh/xpjtjE9nTLr5kD0IM165uPd8+rGkubsqBnDWuBtrqQufdQpyBtAQFotV5ChUWKXR0YI5U8BrxpOA/GHATnOXbegfUs+eeALTbyQNWL00VTOBZsE5/JVzJg+cx+rhXYIDPV6WDa9z/rtJ05z036AULMVYIEvcd+s27V4ucJzpArLXzjzaWzFM+CWOPqFZKM0MRQvf/Of4WvnZKCM0khQo54CBfyjoU8CHvoxhRNBpkzSfYnV5N5dpSw1VixrPwzM= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR12MB9473.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(376014)(7416014)(366016)(56012099003)(18002099003)(22082099003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?2SF0zAMBWfIE2QCCMbmkPEXZEhD3oKVrtWrmmZbFeKkLjjLO8ocJpAt+FA3j?= =?us-ascii?Q?CEAHKJyD8CAhCs4RLKU8CSI+Jrk48HQtpEzqertf4fMwE4HqyOGp5HQCPYo9?= =?us-ascii?Q?7sovMlgGp9taHR+KZ4viS5CSprys3zjE3KrWP/gjFJoIGUU07KEBP9MB9DFA?= =?us-ascii?Q?WAamXQ2vg6tsaUC52zcwptXrq3jJx+S4ROo/YL/y6w6nzTUcdcEqVDW90uWN?= =?us-ascii?Q?K3xUK/AUKaHvuCRBeB9ytRkvh/BHY+Ns4DOFnPIzp7Sp2P9lC5juVJo/lgdS?= =?us-ascii?Q?qviP/9fVoNz2KiFhUzcXC7p1uGz+EPJBvVrSCPTIC12asv89HWqir8NjIWId?= =?us-ascii?Q?b+yq4mZNWWZEEzWSfK0H9Osx+sPLrd18KvHsGnAODZ6oN6P+wEHCXFPQy36o?= =?us-ascii?Q?CnxRnZDf5uRIgahEaJPJGk1XpGQSAAJsrxG1doPTZ1qkRDBemE+81+xQGJT+?= =?us-ascii?Q?Pqc8uG0FunBVhyiCGsvVNR10erd+eMh3yEidpyWpFwAuS3gKRMwuEtc/WFfQ?= =?us-ascii?Q?v46ywUqv7fJtLbuOcGaw2shuKLBECGG7QDDargfA5vbOE7LNvhXhiEOEZXC4?= =?us-ascii?Q?ZIusCLVZksb9vmnnE5WZNyaTwZhXOy2recJK4yxJuGZAFL+dOLEl3E42RoAt?= =?us-ascii?Q?6yHymQ/TBF2UhAiYo5+LdHqyhtKjT2YQ8ZuURvAycfqEgK30mzTOp8B6SFDH?= =?us-ascii?Q?D0rFn+y/nJlIfz2Jj7OdkqHVMaEAV4Ud93ZL1e727R5LSr7AwAin/7h1TkpP?= =?us-ascii?Q?USA2WL3TVIP3D//KhuGXp06GDE5Yt0RhAdznTM/pZmitp/HJ3u2v2wX9fgWq?= =?us-ascii?Q?4lRWL/MksPA0pJKECg+aPa9tvTgVtoRLEBzCKe60PZAmazHWCQ5mGrv8IorR?= =?us-ascii?Q?liDij+yuA4Ls1alPtq9+rvIMt0oa++fNd4b5MSJklF3eY8AmgbPwR2qcnsTv?= =?us-ascii?Q?AP3aNB/wXDNn1WP8s07ANte+hu76rJvmvyHrPamkL4GjL7mq6uBQt5vAVB7v?= =?us-ascii?Q?gFoJEJ5nDXFr4ziZ1j6IAIe5jWN84WJ3CxMstjP6RQnSZv6RojCwzRkV8YE6?= =?us-ascii?Q?1xMNuMNjiui0IxydWbb5ohGoxacctuDfig2oSausWSMkJ235YLPFLkvdCCFn?= =?us-ascii?Q?4SafarYyoA8P60ymwgfUdeS7cJT98V8FX1DYCIi4FMANW+NxHT2ZPf0RRmqM?= =?us-ascii?Q?pBqQl7o/YYTLIMhLH+H6kqM/rcdfhr1oGZ/sUWyhxl5dSSXhhrNWmsqY0GNQ?= =?us-ascii?Q?saeivxnwVlHHw6qCxep8O8GxkcwY1bnAP7cmqTsGNnZA2CjgDoTjjZopONVA?= =?us-ascii?Q?orbZNWruw2qALv1TQxs8ZXAUp0goeDOpWpKUvo4JQUB0uq4sLy6/8yjFfA8D?= =?us-ascii?Q?Z+jZYDjC7mBkI1tr0efpuNCgXaFWjHFZhPx6iiTMFLa4wwOtQhJpmjj3evOp?= =?us-ascii?Q?AE8spe9x8UVfrLqhTOtfydMZIR7jvR7JO+sktO0B0M+3ZL3kLzGUtn5dutcf?= =?us-ascii?Q?O5G4tE6/Qu+BRurxh3ABFDZHFDf5hzlCx7hs6Dz/2Wk7SmTVL5vddSbvxNT5?= =?us-ascii?Q?JhuQ2VjMPH9B5EeITy8pf6feRQ2YKyx7bTz5w9ob2uMN7F0kZQWS1tAxnDej?= =?us-ascii?Q?hoa1ZHEqs+5hTdXkJMsWo5QsPpUBzMd0dueW4QacOh0ORwBWuxlrQKMfl78H?= =?us-ascii?Q?XZmozuAl6pFZsyZqbw2YPW5gsyJzFXmAM7XivcDtLrz4RzUt?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: 43cd01a4-53c2-4593-96f3-08de890f5b46 X-MS-Exchange-CrossTenant-AuthSource: DS7PR12MB9473.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Mar 2026 19:06:58.3231 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: PLvazqiSA24ZVQ11atMQnscHum1WGeSo0NR+/naBbmY4ZudmlcNelgtDU9xydBBM X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS0PR12MB7607 Content-Type: text/plain; charset="utf-8" READ_ONLY_THP_FOR_FS is removed, the related field is no longer needed. Signed-off-by: Zi Yan --- fs/inode.c | 3 --- include/linux/fs.h | 5 ----- 2 files changed, 8 deletions(-) diff --git a/fs/inode.c b/fs/inode.c index cc12b68e021b..16ab0a345419 100644 --- a/fs/inode.c +++ b/fs/inode.c @@ -280,9 +280,6 @@ int inode_init_always_gfp(struct super_block *sb, struc= t inode *inode, gfp_t gfp mapping->flags =3D 0; mapping->wb_err =3D 0; atomic_set(&mapping->i_mmap_writable, 0); -#ifdef CONFIG_READ_ONLY_THP_FOR_FS - atomic_set(&mapping->nr_thps, 0); -#endif mapping_set_gfp_mask(mapping, GFP_HIGHUSER_MOVABLE); mapping->i_private_data =3D NULL; mapping->writeback_index =3D 0; diff --git a/include/linux/fs.h b/include/linux/fs.h index 0bdccfa70b44..35875696fb4c 100644 --- a/include/linux/fs.h +++ b/include/linux/fs.h @@ -455,7 +455,6 @@ extern const struct address_space_operations empty_aops; * memory mappings. * @gfp_mask: Memory allocation flags to use for allocating pages. * @i_mmap_writable: Number of VM_SHARED, VM_MAYWRITE mappings. - * @nr_thps: Number of THPs in the pagecache (non-shmem only). * @i_mmap: Tree of private and shared mappings. * @i_mmap_rwsem: Protects @i_mmap and @i_mmap_writable. * @nrpages: Number of page entries, protected by the i_pages lock. @@ -473,10 +472,6 @@ struct address_space { struct rw_semaphore invalidate_lock; gfp_t gfp_mask; atomic_t i_mmap_writable; -#ifdef CONFIG_READ_ONLY_THP_FOR_FS - /* number of thp, only for non-shmem files */ - atomic_t nr_thps; -#endif struct rb_root_cached i_mmap; unsigned long nrpages; pgoff_t writeback_index; --=20 2.43.0 From nobody Sun Apr 5 16:28:55 2026 Received: from SJ2PR03CU001.outbound.protection.outlook.com (mail-westusazon11012048.outbound.protection.outlook.com [52.101.43.48]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id C620333B6DA; Mon, 23 Mar 2026 19:07:05 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.43.48 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774292827; cv=fail; b=cWh29ql/OTkNx+T4znZOok+6R48jYBO+5veNyvOY1dQUWTrk6EVlmBBkP3cIdTXWv0CQ9Jn3Kxlrv4PjUUSDfriBTFqNw0oZHv5ohn70uDTX9Gmd4G6qW5oAlFvyV/tbM16xND7XI2YtpVp8PfHDFp7THxu3bQ9cpTBnyEvSQUc= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774292827; c=relaxed/simple; bh=rcaLeGgsrx8v/60V0pTsze+7Upfx407OJylaby8wOH0=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=rVelEEmJ2mNCTZ+doZ05QASNyJHnN15kVmWbY9j9VHqiv5TRjqWJa9fIzHTBPW2Q/0gHzfR3GCsS4LChx0jt9TWolFhUL2Qm3AgfNPYzFmKPuzuFyZAjBWkP4rKWgX3hFi+19kyluVQmsqs/2w356lmKKfKtln32mE+4zDsOYsY= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com; spf=fail smtp.mailfrom=nvidia.com; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b=k5Gjrg+6; arc=fail smtp.client-ip=52.101.43.48 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com Authentication-Results: smtp.subspace.kernel.org; spf=fail smtp.mailfrom=nvidia.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b="k5Gjrg+6" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=TUQHdSdUrSTUbrz0C5Xfaix0kDtC2r3jKfCuzcNSy+5myorLvu7YHdgQKOKGazf4fyAEdkfe2WhHPvVeTmUnz4HMYQ5UZiFJCgtHQITbrYz91ippVAabMqLEz6VT2T6ZAm1fCYiiP3s/D5CxYrJk0YPzGoP9AhnFuGf5DvmSVXELZLXxW4SeFVKU3YTMJuxTsL3ET60NBEM4GryKC4B9DneitXmloGn9fpMUlxp0yWQ2f3u1TQEaFdpDhTKkdPD+nTTpnnGDoVzAc/N5oDFLUyKC8yQTdSoLdROOaNDnx/x1lXp/tMGlxiV9m9dlVdHSEnb+RbXXfbhSBKArN3UbaQ== 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=c2ko5uCQXzCDh+aC0otcCCj5ZAwemX95pEk7+vX7kHo=; b=O4wJTjbbADzD7Eqz0S6Tj/tBJTO04Q6biMkWjpOsUiLb4fW2BQ6pNuShOhEH+zXtfYqYHWmqtvGUEZ1IbxbQWwmIc3CvxBBarlZoQb209vqFrVHeFGslvb4wxD1S5/y0H5ZOqOJ8Lgopl4eu3tgB/FEwSeWxYS/IbMz8Uk5gixpEiHk8nFwRtmRkyK8NDcYANbdgoYawN8F3oS9umyN0k7FY+AJUdVF0RlHok1TuASOzHwF2ZVjXA7Y3MHYlzBLQyE6cTIgVWMxKr4IfVUFnlpQUvNBoDhRUMYvi5nzsTldgKtm6BG/ZN+Yz6G6iL30C960ZeY51F+0KROnCyFVE0A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=c2ko5uCQXzCDh+aC0otcCCj5ZAwemX95pEk7+vX7kHo=; b=k5Gjrg+6nuCRWAJzjoLj8yZWIsLNgB4i0cQWcP4v8HRz0wowUt9UaMzPM55b9P0VLgleEYBEyvcRnKJcU2WR8vErZ0nka1p6rJjjmG6B2AmUriQwiWnTwH0Z6twY2Im6M93rlh6KgK+7cNxVtbC9JsvbyEZ0JSmx+DHcHQ/hJnwYKTNVp2M5ar0lR5NAvnC4KI7AyKstmaqgoEjg0vsXJL94fFOnnGNpdxlD/SLqWf4vEpLNH7dCiM13EIENi9ExOjxuqKK+hjUaKFUSdrXj+mff0qOIQ5dXTmwsWNN691FVfp59IK985vsq1H00oehgWk5QLFC0Y2xIG1oGYWgTpg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; Received: from DS7PR12MB9473.namprd12.prod.outlook.com (2603:10b6:8:252::5) by DS0PR12MB7607.namprd12.prod.outlook.com (2603:10b6:8:13f::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9745.20; Mon, 23 Mar 2026 19:06:59 +0000 Received: from DS7PR12MB9473.namprd12.prod.outlook.com ([fe80::f01d:73d2:2dda:c7b2]) by DS7PR12MB9473.namprd12.prod.outlook.com ([fe80::f01d:73d2:2dda:c7b2%4]) with mapi id 15.20.9745.007; Mon, 23 Mar 2026 19:06:59 +0000 From: Zi Yan To: "Matthew Wilcox (Oracle)" , Song Liu Cc: Chris Mason , David Sterba , Alexander Viro , Christian Brauner , Jan Kara , Andrew Morton , David Hildenbrand , Lorenzo Stoakes , Zi Yan , Baolin Wang , "Liam R. Howlett" , Nico Pache , Ryan Roberts , Dev Jain , Barry Song , Lance Yang , Vlastimil Babka , Mike Rapoport , Suren Baghdasaryan , Michal Hocko , Shuah Khan , linux-btrfs@vger.kernel.org, linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org, linux-mm@kvack.org, linux-kselftest@vger.kernel.org Subject: [RFC PATCH 08/11] fs: remove READ_ONLY_THP_FOR_FS code Date: Mon, 23 Mar 2026 15:06:41 -0400 Message-ID: <20260323190644.1714379-9-ziy@nvidia.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260323190644.1714379-1-ziy@nvidia.com> References: <20260323190644.1714379-1-ziy@nvidia.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: BL1PR13CA0309.namprd13.prod.outlook.com (2603:10b6:208:2c1::14) To DS7PR12MB9473.namprd12.prod.outlook.com (2603:10b6:8:252::5) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DS7PR12MB9473:EE_|DS0PR12MB7607:EE_ X-MS-Office365-Filtering-Correlation-Id: b264ed22-4a04-4dc1-544d-08de890f5c00 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|376014|7416014|366016|56012099003|18002099003|22082099003; X-Microsoft-Antispam-Message-Info: UdEofutM3p/YW0aUocogq2sAwyiwuSf7+VI/XleOtYuu4xRVJLHto6OF349E8oSvKzplVpYOpINmRlLPq72xN7RD0fK87VhLjtI/c48IxSIBiEE7szTCu1ltoTT9ZD8BI/wVGJdmW58sRmjezVKDLQvKcrYtSBjKhtuxMorHysismLDogAXS59ZFs9WDuMCrl/IXhg9GyQzZwTHvtxCCjEm85Pb2hdFNG8WAh4x4SsmM1gc+XyKBj/rg/PYdxixuCNIib5YEbnJ1M65OIgf4cYKwPLVE886kjwUU1DKH6CGru7UUMgsyFJjQSilPmt32Ot7ybdy0mfGzuLDdFBQFMvQ5+NgU53YZGpPN81Qyj9odldlMxMi4Xfrc2gnxMar+cBFBUUlxRamEUgAXFeM2oH0XzBCkjp2hPF9K19RXNWyRd2y/RByCNjfnAE24F59TzxPM1vmyoTPSTfZvPDpFnMk9oTMw7XXWPlumY2q6oWwjJH8hdk/13wgQHoeZSBbxiW7uzq/BnDYAdfUbFV2cVaMyaz3PI5s09KdypDy0AC2aTPsgZddjMyF4aIs3tHG2Lcq2TNqTBreBuIQDFAWksis1C9hQLv+VA6fgqmwjXCEXvEvVk75hWEnqtXkDefooi7UvhfPyQuxivOIHBkaPDV65Q7Ue1ZLEMP1CJDcPgwzl6WQJvXtgFXRqV6mCpRJHouDXD9kcqxgpQR8FgJ61fLdGB602NnQzlhvHrBzhudQ= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR12MB9473.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(376014)(7416014)(366016)(56012099003)(18002099003)(22082099003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?k/puz1SoeR9r94KFUB3A2NYEr66uh4zFBjXP7tJQA5eYfwmG+N1L1fTQe9Rp?= =?us-ascii?Q?3GVozJKe7KQf2CUY6+wqfI/3FH0q9H8Bymg3kgvSivaVsqkdhehYz0oBkL6o?= =?us-ascii?Q?r9E2Lw8ORiRQKAeYHPAE432Ar9ONx2fjQBooq4ObrwRHuxZlpejgyio1/LD7?= =?us-ascii?Q?d/9qUS7GTxLUax8iOVPKoI4W0Hxnq9G4tixV1LB7X998WquQh2FJU7DLBYpA?= =?us-ascii?Q?Zjtz0xJzOWJCEz86PBe3gyC6SIunel/ZEqjaPyj8/2WTdNENXJYYlPUXYFeR?= =?us-ascii?Q?47j2XXxvAZYZ7rYzH5B346dgnEs7LtoRbEXLGqDr/3AzbSHHMJvmw0WR9GJY?= =?us-ascii?Q?UqHb/7T1Fp7qGZFey/1x/OW2rvarIXN1CjoSiYeUv7xHR0lsj4mmJAPLTXza?= =?us-ascii?Q?/GZjuEm89RHzh6FmIH5QaX699KlCDQIlfcFOJSjh+IbGTUiLEEkF5MnqWX0z?= =?us-ascii?Q?VcMGf1ZM+geQYysCo/x6ZuGtW+FsPJWFEeVWMioaINjggaC8ckoSKodZ69eA?= =?us-ascii?Q?lYf/CT7H/8X8ujk5+ic9hYJpw+jRmMm5kBeCyuE3btNQCeHyKcxAryy3sm85?= =?us-ascii?Q?mC3yf1KDlIeNHOVdi1w0cHEY0OazghQcPTrf3E4E+NLV79st0r9FUWl3kfZL?= =?us-ascii?Q?NCgLaFMLibyiB9ut1bq+CG+ydLRm+56Crr5XnteZGIWRoGUzNBKfQ0PzZ/vT?= =?us-ascii?Q?WM7jfM24ZLZdRY/9icTZT2w6ItMohYhNBghYImDNWQkRxIFweFn51krFsGHY?= =?us-ascii?Q?tG/25e5ePRP/jz8epgqG9ht4XxsSlW1rNryhnRhi203Xl8l5MCBL5tPd9zsO?= =?us-ascii?Q?fXWeoxf2l2AhODl7kLe6ZnHcvs+/XuaVcuktlBMkIVveNibOTo2rspEco2dX?= =?us-ascii?Q?6cW8XR3zK5cSvR6xOK1HmSnH00l9hLS9V9zqvA9Sjn8kIhIE6hEJohGlqT9s?= =?us-ascii?Q?ZfAqoMbxRTCMS++FAGEeWI6YmdJSV6YTf4ZitUTkavC9+3r97EjJFzLwXz/z?= =?us-ascii?Q?rv2dplG3M2L8KhUyCsy3itReETnbMai2h8IoX/qqIfFZMFdDrrRTw049/zm8?= =?us-ascii?Q?Yr55XV0f8VaO8kPLxNvsMy0/CqLOfKLYcobMerWsO98olNnYNlw4NXEcF0qg?= =?us-ascii?Q?HGz6KShfAUKxZyTIRo8DnUwHER/3beNlIYK9lK2UQW3cTupgwJ5uGKJu12y7?= =?us-ascii?Q?nYnLL6AqfvQLNNn5sPkuU2CgLAZTCwNriBrkX98A/pKfTIk6PIGrLVL4DztX?= =?us-ascii?Q?n1euG91ZrsmoPfwJet3bPtW6d2WwfKMuhAkAmfSFGROZx9iwcuQjtz00WlgN?= =?us-ascii?Q?CrnzRzsBX/JgO+LxnpAJPS0jP7YbL67u+zCx0OVQ1hGiTfemVnyCHJZqbi+7?= =?us-ascii?Q?hN5vn8IarZXq74i17pgE/wghkm0AWSxDU6/WFn4LlriyTWoCTQ9tivSoHySV?= =?us-ascii?Q?//Ww3DD+1shX8F5szt7wH2OeCWixVdXGP2V1GGTlPrWM6h560RIX8zHmx2M5?= =?us-ascii?Q?fiVT7w1dIAV8K2Nrm5GqKNWb5DjiR9QlGoHbJfoKZKWxpI5BrTdjkzXbwlrq?= =?us-ascii?Q?d8AL40tWSNkSmvZhmcuRAEHiKM9gDjujDN1iCa8+BHL3jJuxKRin49C9xurQ?= =?us-ascii?Q?30xyZHTQM0eE4t1Bk9BbbFluC/UkgBAVDJKrmsVLyhitSU5iE5t2TCpsSqNf?= =?us-ascii?Q?YVuZVj3RHm/BPZtyk+TQ8ptooJ+cWAVBL/75YV56QiDD1frY?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: b264ed22-4a04-4dc1-544d-08de890f5c00 X-MS-Exchange-CrossTenant-AuthSource: DS7PR12MB9473.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Mar 2026 19:06:59.5363 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: Y2AE/FhMhVYbXMznqXMJZ7LkavDnxi3CJagBGuRNVAxKo/WCFZxaF0ORKg0xqwcm X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS0PR12MB7607 Content-Type: text/plain; charset="utf-8" READ_ONLY_THP_FOR_FS is no longer present, delete related code. Signed-off-by: Zi Yan --- fs/open.c | 27 --------------------------- 1 file changed, 27 deletions(-) diff --git a/fs/open.c b/fs/open.c index 91f1139591ab..cef382d9d8b8 100644 --- a/fs/open.c +++ b/fs/open.c @@ -970,33 +970,6 @@ static int do_dentry_open(struct file *f, if ((f->f_flags & O_DIRECT) && !(f->f_mode & FMODE_CAN_ODIRECT)) return -EINVAL; =20 - /* - * XXX: Huge page cache doesn't support writing yet. Drop all page - * cache for this file before processing writes. - */ - if (f->f_mode & FMODE_WRITE) { - /* - * Depends on full fence from get_write_access() to synchronize - * against collapse_file() regarding i_writecount and nr_thps - * updates. Ensures subsequent insertion of THPs into the page - * cache will fail. - */ - if (filemap_nr_thps(inode->i_mapping)) { - struct address_space *mapping =3D inode->i_mapping; - - filemap_invalidate_lock(inode->i_mapping); - /* - * unmap_mapping_range just need to be called once - * here, because the private pages is not need to be - * unmapped mapping (e.g. data segment of dynamic - * shared libraries here). - */ - unmap_mapping_range(mapping, 0, 0, 0); - truncate_inode_pages(mapping, 0); - filemap_invalidate_unlock(inode->i_mapping); - } - } - return 0; =20 cleanup_all: --=20 2.43.0 From nobody Sun Apr 5 16:28:55 2026 Received: from SJ2PR03CU001.outbound.protection.outlook.com (mail-westusazon11012070.outbound.protection.outlook.com [52.101.43.70]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 2FFB23446B0; Mon, 23 Mar 2026 19:07:09 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.43.70 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774292831; cv=fail; b=pjPpyzllBzatoYSAHDhLLmp5tQOKIuhX21J0upkWUqW21vb8ySxVdZEJbrQ4DWW/8bnLwzEOVH+sLYQjn7VzSdaDbjR5T81+CBB77F+1TQzgdvOPndwXoHI/LU3rYyOaIRCgkj4juGTcSpS/YDcBOmPRacPGc/7hGif/4Tikx0I= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774292831; c=relaxed/simple; bh=38edoqer4VzYNX/IuIOyh5GV56/mzpZtC09ga59FsIE=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=idZrPdAUHw8dfPnYrMppaluOu/+JkbRGvzfUG3FCD9rW0XBD8e+dRd7hTxLxQ7oVuj1984kRBl/nfRNxtqHPHTRsIge9TwUt0DAO//mz7SEbjOx40EuZhCWB9QrGUTgTxr34+M39GILkZl9TU2Y+nCDh5VyHzCAS5SPBE+McpFI= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com; spf=fail smtp.mailfrom=nvidia.com; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b=T6HZDHrq; arc=fail smtp.client-ip=52.101.43.70 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com Authentication-Results: smtp.subspace.kernel.org; spf=fail smtp.mailfrom=nvidia.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b="T6HZDHrq" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=ttRLBhtSq0gGns+1vPj8aJ5j0T4y9SE0joAYj6utyl8b/DG8PiJuTA3/Sg843Y0SsOSQBbY6pfY6k+kVDAcwlIilfUKj3+luLo2rWcrVnKo1sdATh7bEn5UU3vDy1IfKXcJwZChLyGfjhRENCqOAp02qfxJAqErdD+tOD3b2uktSw31jE1gnpNHNeHHy3LWYD5AOIcDmNG60b5JylD+96kQoZcqSj9al7uYQGJFv58uTtgAUppyxXh6zycXzwmxITJ2N1LxPLr5ZSdEA/85Jp2VBMBwJP5WNTakzkbqbxnMTNDt0uzlLSLkNn7S+XgIeANQUPBSonqUyo0wB/V3Ulg== 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=w5Y4Ma6nPfpRSXY4hh29wB6hPN6i+d96I0iGCltyoTo=; b=UvL/IUulJ6nK8SeJQ3TObYjEtrewTbeiFGVrcKhp/TBbBE/Y+BwrgDbQeu4ZoIH5SCVYAVpdD982qSX9QEyXbQcBGNtAU/jrVd7zwPLTJPxxyYx8GxeMANe6sxeWF52PvcmZzHx7P1zKpHaNvJpETdIJ4c4XAGytrOaX9W8xHDwrC3McO5KdA/m0fP/NOjkB+kAeo0IoEjuZnmFDpc7m+MwgIj7X2yGT1GWjJ7pZQYH+zTSK0Nd6t74+a4+Fh/IbgBEOR5+/BRHnkrDafJwJQrBNx7v0vKkQUbuWHY1XochgI8ubD6rDNMlxF+Qm6CF6yMJisK9zGM1L1apynxLT7w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=w5Y4Ma6nPfpRSXY4hh29wB6hPN6i+d96I0iGCltyoTo=; b=T6HZDHrq+3NLT1J7RmU6g120tfTeIIH652izmCNqbOENPMZm8TxkRnW3yACriX87ocfjTp8Tm3d/gbCv9lOhNSbVWlNShAcCIkagi1uFGNfDHJb1ewVwDEwgyYOBduux4hZgudbO5GOdMSZ+iXg2DMH6EFV36gys4Kdc+YptI3YnIYKTTG/UcwYzDgp+gA88lbOn7JNpbljpQMzK0WrXNgMjcCyqg8cX1GoFnfjHaRLTDSzZ4lKJ46EJnlUZ5kh1xqSOxpc/9T2BPrCwSV75DJMqq9ANFfdoL5zpVUoySWHgwuX2fzqiHmCaBXpejVFMuXoRM6mfon09rovzxwDs4g== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; Received: from DS7PR12MB9473.namprd12.prod.outlook.com (2603:10b6:8:252::5) by DS0PR12MB7607.namprd12.prod.outlook.com (2603:10b6:8:13f::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9745.20; Mon, 23 Mar 2026 19:07:01 +0000 Received: from DS7PR12MB9473.namprd12.prod.outlook.com ([fe80::f01d:73d2:2dda:c7b2]) by DS7PR12MB9473.namprd12.prod.outlook.com ([fe80::f01d:73d2:2dda:c7b2%4]) with mapi id 15.20.9745.007; Mon, 23 Mar 2026 19:07:00 +0000 From: Zi Yan To: "Matthew Wilcox (Oracle)" , Song Liu Cc: Chris Mason , David Sterba , Alexander Viro , Christian Brauner , Jan Kara , Andrew Morton , David Hildenbrand , Lorenzo Stoakes , Zi Yan , Baolin Wang , "Liam R. Howlett" , Nico Pache , Ryan Roberts , Dev Jain , Barry Song , Lance Yang , Vlastimil Babka , Mike Rapoport , Suren Baghdasaryan , Michal Hocko , Shuah Khan , linux-btrfs@vger.kernel.org, linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org, linux-mm@kvack.org, linux-kselftest@vger.kernel.org Subject: [RFC PATCH 09/11] fs/btrfs: remove a comment referring to READ_ONLY_THP_FOR_FS Date: Mon, 23 Mar 2026 15:06:42 -0400 Message-ID: <20260323190644.1714379-10-ziy@nvidia.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260323190644.1714379-1-ziy@nvidia.com> References: <20260323190644.1714379-1-ziy@nvidia.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: MN2PR14CA0018.namprd14.prod.outlook.com (2603:10b6:208:23e::23) To DS7PR12MB9473.namprd12.prod.outlook.com (2603:10b6:8:252::5) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DS7PR12MB9473:EE_|DS0PR12MB7607:EE_ X-MS-Office365-Filtering-Correlation-Id: 2d8349f2-6c85-43aa-404d-08de890f5cbb X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|376014|7416014|366016|56012099003|18002099003|22082099003; X-Microsoft-Antispam-Message-Info: 0CviLTIXWQ/9g6iz4hYfoJpsWhmEHOrI/MBNE1VzH5KL/86DeXPZ0ck95kYZirU2Ffzx8MREkq2MpKNaj47XC26rBzza0Gy3Fm9q+WNG9x3cCU9CVh6dzvdrEiHskfdlxeNTxCD7eXISvULjl+pY3sSqHrSF7MmXmY8jfr0rYw7OGLOc4KhJ/DBi8yMEtWpL4jmIsW08hBL65302Gkhy9kjkH8pX4Ri6giymcla9HSAJiQGjqP5Qks9NZOPY50GJl3jFkUEJsvHGxilGD6uzpmWQiktl160CTCKVhDtyW0hT4mRHItYWrRY9IObABnZR2H9mNYFDFydLjh3Cpntgc6skdzi25BZVj/NCrvEJzHX9AspI0EcwWnLrzL5wZTwM7pJzZ4CU/a1xa9UYjZNaCYxyFwzibmhe9mCxYjsb2sHnJ9wkVC3v3vdNEju+ZBzd7/ysD/8NUPOB9DaM81LHzF9s5tVadIosAr3zPPU8sK2Wyu7q46WtjYbpIbdzsB9+KsfP8F/I/dTpUeY8PWbRt55LGCZ+UUaPV0fxESnqM0INTBV1wMT9l4C3qgC4ZeAPo7YiSOvQhoKnOoQviLUPcR1E3LqD6yxCtMgmAunPtLpAww1tDKqdydgMOyaLlVgxKA62Mrn/21eCwEGwB9e63QKQynWbWqF7z44srtnxuzJTDGXvovORjroKJEqqyPpwodELf8hIctrr/PufKf7EDCe3OKnySYr+/g+4NgkkjIA= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR12MB9473.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(376014)(7416014)(366016)(56012099003)(18002099003)(22082099003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?1EfDz8kplK3/BpNRPbwejoEpJnKnFF4tqLxxfAdiZjEUvITOz6NkXR45Pvj4?= =?us-ascii?Q?lZoGPyzxg+CRrFl1PA+R7iVFlDvi/9InNAwoX3KPl0Ry0u6NQyVyS10vQaSk?= =?us-ascii?Q?J5STZ24DGcrQA9JjF0VA/lRxyORWexj0J5D6jU/3Wz/C03ekVgHdLjUPR1pk?= =?us-ascii?Q?7Kt7aouGAYZZVd5Rb4h1anAS/y6F3PXn6CejeGN6aqO3b9u41qxbap10Xz6R?= =?us-ascii?Q?vHvrL3lgBrf6bfKeuUFRaU+xV1MlaC/n2+sjQ9/477B4Qk2a5azcvHbdwnSq?= =?us-ascii?Q?DdCMc7ihrkbwY9IDGVO9YydIRDnH0zYw8XR6CUkC1PjosJE1sUhL/DgkhkuC?= =?us-ascii?Q?MFXrKPfHK2V3FYoT/afFqtx/T4KuYT7I/y0DZra3U+wLxVlCnJaha6oAvRfS?= =?us-ascii?Q?0rlGePYEwUyoSurUjLcJy5aR4uKyXRzsdYnq5iyzQ+BKN2iwlfpsqaagSrEG?= =?us-ascii?Q?F1xqZp4KvlSQju1c0E82wI4s+cYlfsXM8cr/kLSqvj7EPIeYI0IJJCyNwzde?= =?us-ascii?Q?z609KtnWou2iHE07p5/LIB5g/+bkGRHvLxGpAR3ab8kQisBwJohwQN9exBsr?= =?us-ascii?Q?3C3HBgSojUm9dmNyz4ajUmZg7bKxRkFEIcVzACLm3OCK9WSjc/Q/ex2vohjK?= =?us-ascii?Q?fAXUxwKop/1oIPHgsgaD/RP01BmDSY3Rvgv9T3oviEBlTndjKCOphJE5Klmd?= =?us-ascii?Q?V1kUcYFLLRjWYMKTmWPhKaiTGw9zd92Itp9PsEqPaiUmwnurGJTDmI1qZ5X9?= =?us-ascii?Q?3WaK6tMQxZBBIvWxjzJnXrrskgmfUng+I8tKCluzz0tngaCYn7L48N0A+7GC?= =?us-ascii?Q?tTPHiDlW7HiNfi12ldhvB+4XmYBfCIl6DxznS5J2bsOX5VTvug46jKfdWiap?= =?us-ascii?Q?9yH/M5YdAoJzq9U9j8PzuCrvW//vNZ2rWIhEyZxd0a5kDRRqVZxnETfMGOdN?= =?us-ascii?Q?05COjlwueMBsTHc5lAsOdhY+fs24ua1c8fEKtXhkgETi4xnHmMc/bvaK7Zt4?= =?us-ascii?Q?hMc0FxkUsdPW/ZeDbAqO97PAplCwt4Zjoirvv4ybvjwGDDbJMEdNmjLmvJDw?= =?us-ascii?Q?FgKq4IQelOvZvnzOcSB3hFMpsL2b3xTBRs6y7v571VrtPxG/IN+qShya7qFr?= =?us-ascii?Q?aDu7iRXelvJe81NZdU4W+0AbSFAOQ6TU2W8CNOH5NoVvJ0A5bCYA0o3llW07?= =?us-ascii?Q?pYN6nYLdT5HVg40FhAXF+ETmVeJv4kb5FHWrJesdLX4OuGFRF9p2D1EflbeG?= =?us-ascii?Q?dos/zK5b+VPtv37Lvq+zG654ZaDUJKdvoat88Qz/2Cey0SZ6CfrrQWbpPxgt?= =?us-ascii?Q?m0MI9/spT8bb0ezFSi6b+pptnUTyC7iW0mWoOIDSFMKO2YrnwkN4nAUeTh/a?= =?us-ascii?Q?8mzOrCQJc6Wf5QiGRfrhYAr4gx9GrORVlbxnzoQqTXG+ioPvROl606UgQoZl?= =?us-ascii?Q?Soupywox+I/95T2vd3foDm4FSQ4326LvlqaUH1TlNYwPmJXeNvkW+hQls1kL?= =?us-ascii?Q?EXHWfHR2L8WFthH4aPBXIefe+kxiMpro18eGOoy2DR+YC+WSCCPw3nyMcXku?= =?us-ascii?Q?UFHa5BGTTg7PO0faFWMMeS3Tfnn5PLfKXKv5PAxdPv5EPZxZTnmr2Dx75D/c?= =?us-ascii?Q?fcWqiEh8Wia6oQm+RF3m1ca03QzIO4huXhth84c338bvhPNH86D05AC1bo39?= =?us-ascii?Q?O0LFxePJfjgN4bNVL/h4/BUBTNQ9RlrTIlQ49ghpixkVamNq?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: 2d8349f2-6c85-43aa-404d-08de890f5cbb X-MS-Exchange-CrossTenant-AuthSource: DS7PR12MB9473.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Mar 2026 19:07:00.8044 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: z4huzFS57HAk0JlLhL2nG/rvsSDpjxT3URwg1NmqdNG0FiPTs5JaAqYJ11qOh6ya X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS0PR12MB7607 Content-Type: text/plain; charset="utf-8" READ_ONLY_THP_FOR_FS is no longer present, remove related comment. Signed-off-by: Zi Yan Acked-by: David Sterba --- fs/btrfs/defrag.c | 3 --- 1 file changed, 3 deletions(-) diff --git a/fs/btrfs/defrag.c b/fs/btrfs/defrag.c index 7e2db5d3a4d4..a8d49d9ca981 100644 --- a/fs/btrfs/defrag.c +++ b/fs/btrfs/defrag.c @@ -860,9 +860,6 @@ static struct folio *defrag_prepare_one_folio(struct bt= rfs_inode *inode, pgoff_t return folio; =20 /* - * Since we can defragment files opened read-only, we can encounter - * transparent huge pages here (see CONFIG_READ_ONLY_THP_FOR_FS). - * * The IO for such large folios is not fully tested, thus return * an error to reject such folios unless it's an experimental build. * --=20 2.43.0 From nobody Sun Apr 5 16:28:55 2026 Received: from SA9PR02CU001.outbound.protection.outlook.com (mail-southcentralusazon11013055.outbound.protection.outlook.com [40.93.196.55]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id E644332BF44; Mon, 23 Mar 2026 19:07:14 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.93.196.55 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774292836; cv=fail; b=gpYZH/dipmzLHXQFnUBsiumA7p3Eo/kj/Wn1KiRJAEV6WnFoq+fKUX+XZ6YP7vpUsgah/ZYJ9l9c3iyq/r1xQbXut8WpE3ikigMOqhx7iyslL7AT64bDvQhOqQOFx+KO16KymenNQ/aOxRmkKnVfQUCKpDrgPEpWhmwY51COj1s= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774292836; c=relaxed/simple; bh=uyda2J8mnChYzY2Ara7cL1rwvAPBzwCDT7zWyva/Dt0=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=K+7x8f5H1xQT++j3PerJY9w4lYws8Y4lvo3WrX+dKq55cEjOT02gr32ti3Rq8E2zsoDFGHhRT4lbuKcuaAMb8IgCgghXNIAtHqYoJDf0G64KedrjAoKFKh+R3lf8KpyHZAu1t0POPOn+bP28cBHYV+C9uFP8NSHfFb4oDQoTo+c= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com; spf=fail smtp.mailfrom=nvidia.com; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b=SDfJLZio; arc=fail smtp.client-ip=40.93.196.55 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com Authentication-Results: smtp.subspace.kernel.org; spf=fail smtp.mailfrom=nvidia.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b="SDfJLZio" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=lz1BrFdizfN3hGRqoDH2DH+TM5kLgwPtkAt4uOqtxL/QvFT+6FNw/n/Nqy8t5xLx0XdajrZOPKnsH3b2D9/XUfVVJFHMELeFlyVRuY50awUrQnUxnTOEhfxjQWgoZv4JOGf89R+/+EIdCcmZmGMG7mm97wKaZM9kdxyyOYqWTaOUGMTTdg6DeYj0Qg8pEqcdkr0EsGenMhSZGgZYmd6nAvlEzm5J7ciDJJ/1ye4n1FZDfNTbe2r6VBTtD42r2KzRb2d3SxZYkV6JplfH4eniEIvQljCbzTyHObeWCihfar/3wNZ1c4L3qT00osb1KWNc0mu9Bb3TCk39X+DJ5/nGqg== 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=Vl6/tx73RisU+jkhIkU7m80Sk+PpsiZxq1enLBt171o=; b=ok2j1SwOV5j93LY5cVq6Tg1onDbXjaH9+QvtacIIFU2lYdeydNvf93SyU77G+JOU2I2uSMhfGjCiBArYljAFu5tz1O/t1avgUGSAkt0QFPYtvmELlDYGT0TTzrY0hWKcgwl3TouGXsSsy2MvJmB0dgBS/UCjZX/kqVS6T+snWydruyR1wz9zheQkkzB9ofKQJr1Dpk9U8d1mzZIUtTXUfNmZ8UMdlrEDdkzelj0mlBJgFdb/SONcRyNdQ2Bqwc7jhYzZwg/rljKx2tk2Q3uGE2j+sO0H4pmj8EALJEQBh5JklL2fRqy9KZICJFY8olA3/2L7ZGJiRDA7HoKPJQUTkA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Vl6/tx73RisU+jkhIkU7m80Sk+PpsiZxq1enLBt171o=; b=SDfJLZiojKAZGOFdh9SrVmyhH9Jx9OOIqwz6HK75CQVnNw/67IXOpg1G1MJ88zy85S5wWijJQwkSoTIlb/BUUJ30sHM3Va6eV06pHw8qsugQbV34bjclT6OUwG7vbkZFFhOyjRwY9JZsTW9/cC1ULuFR8KGXXL871pnf7vU68+GlNZlL3Qh/qRMkTcAEFIa3eLJkJsZ1xNeD1V8ITNrYRWBJjF3lnO8Lq1uUhMW144D4UtBaHK81+vH1RFhY2PMnuKAk/VjbjnrNpSzmIxxt+xDKaavKMAsXXxFBxdvlJ2RIZnn9luM8yrRoimUic5m+okHJZ2Sg/lqHwuTyD+bPXg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; Received: from DS7PR12MB9473.namprd12.prod.outlook.com (2603:10b6:8:252::5) by DS0PR12MB7607.namprd12.prod.outlook.com (2603:10b6:8:13f::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9745.20; Mon, 23 Mar 2026 19:07:03 +0000 Received: from DS7PR12MB9473.namprd12.prod.outlook.com ([fe80::f01d:73d2:2dda:c7b2]) by DS7PR12MB9473.namprd12.prod.outlook.com ([fe80::f01d:73d2:2dda:c7b2%4]) with mapi id 15.20.9745.007; Mon, 23 Mar 2026 19:07:02 +0000 From: Zi Yan To: "Matthew Wilcox (Oracle)" , Song Liu Cc: Chris Mason , David Sterba , Alexander Viro , Christian Brauner , Jan Kara , Andrew Morton , David Hildenbrand , Lorenzo Stoakes , Zi Yan , Baolin Wang , "Liam R. Howlett" , Nico Pache , Ryan Roberts , Dev Jain , Barry Song , Lance Yang , Vlastimil Babka , Mike Rapoport , Suren Baghdasaryan , Michal Hocko , Shuah Khan , linux-btrfs@vger.kernel.org, linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org, linux-mm@kvack.org, linux-kselftest@vger.kernel.org Subject: [RFC PATCH 10/11] selftests/mm: remove READ_ONLY_THP_FOR_FS test in khugepaged Date: Mon, 23 Mar 2026 15:06:43 -0400 Message-ID: <20260323190644.1714379-11-ziy@nvidia.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260323190644.1714379-1-ziy@nvidia.com> References: <20260323190644.1714379-1-ziy@nvidia.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: MN2PR04CA0007.namprd04.prod.outlook.com (2603:10b6:208:d4::20) To DS7PR12MB9473.namprd12.prod.outlook.com (2603:10b6:8:252::5) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DS7PR12MB9473:EE_|DS0PR12MB7607:EE_ X-MS-Office365-Filtering-Correlation-Id: 249dfc55-7fe6-44ad-56e9-08de890f5de4 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|376014|7416014|366016|20052099010|56012099003|18002099003|22082099003|17002099007; X-Microsoft-Antispam-Message-Info: hh31xwDqQOIwjG6sEtvgOqWCwA/WBFQ5FJ3C/x7SrOOCqBvHMwpmDy12a3c8Q7+MVS7lGRbXcsAiZdZmC+0GN4LfW9CgXSuI1B5C3noSMQkWXSJxbcqC1y1OoHkZRu1A0Mm6hZibVUEDLtFdNLCF3DsQIRXaWxHaaq/3b8poWKlRxHk3URqDlzfFqJuWKnwU8h/JdQeqIvIGBIMgxVf4Me3N/8kVTMcp3QXBy6FaXfSjpdpoPZaRYbOS5KljTBxmxzP4Q9epS3gFGX6Q8gss+wjs/qc3sOL3XS8/VEcmMvrrP9ZjPEUMQzMdhVDWM/YBQysQNSXyJ2Lwsti+nhK/pxPwhgYQYw5HltSW4UX/Q6uaMgNb1NY9SegmuV8oeEix2TDCRxJm3VVe2DyZto4E/MQMgwAaO1bB6KHytj80wTzYpEjcuwhcir4rnsF2eH1g9A/h4P6oOfc/resZvM/8wAfxpfpB2aGcjNxN3QqsXpllsgqgnGBn8jla/KHpOkwF6EpCDoaMznMBAehXBdCIEIyYfB3MsuUtIP9kDgJ0N0+j/L6BnG7Kyo7R9rsXpHwf4pLr8PoyjNGNq8hpoGhxYRKLr97AplhK98onumIm77Kf4NLgSHN77PE0AWSWdabS9H7mYnZzuIXMxM8CTCbAjq3iUes0F4iffR+p4FGUmX0eEKw+ph5MdfkBaFqert1S5CnHqL0NGeJFepJ3XbF5gsbvOHIbNzG4KQKYKuAhilY= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR12MB9473.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(376014)(7416014)(366016)(20052099010)(56012099003)(18002099003)(22082099003)(17002099007);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?HBNezNZrovWzcYIPLlZ6DUe8gKMSl379yoNeolk9YpCACJz9drbkAAJxEjnw?= =?us-ascii?Q?4k7iCmY5LORqgCJ+j7WEqBS9QFLa24/hSNroR5W1rpaHRN06TCBlz8J3OBrP?= =?us-ascii?Q?66l6O31ZN99/S7pITaMGx6bxVJnRoK8W+RKD9fO1v+HTBkz/tNndCdUsHY5d?= =?us-ascii?Q?mDL9WBk56PDP0ppo153/MP11hp9PsDRqUe6p2GYlC/3IKXsnrHrN21Bwj2iI?= =?us-ascii?Q?XewMpJCT4ZAJ3iB/M4K7m7buJUKZlqbEQQLY58FvcAx07XpvuJUY0RK9Tj/f?= =?us-ascii?Q?KOuVnIp4L+OOIQ5+M2NPGi1N/ynWzhtipfSIR8Ywc8Oo7nEBhcuURimATLIW?= =?us-ascii?Q?kXqWyH01uzxedNt18KRhUEPeoRyfmDAXBqk2OlHZJlAgRzjWXBby5XpNNaKi?= =?us-ascii?Q?ZByjMfG/8I83yujR8qQbo9qKGP9CpjVzg3luYxyP4jyisjGKbL6L3IZMs45L?= =?us-ascii?Q?Jh9T1iRDll1NACQWPgyAfSGwWJad7OP8GBRD0U1ZhMqybieegzufbyIcGCf5?= =?us-ascii?Q?2DUUV6yaXm6thi8xIbsdt2dVA3p+7XB8dYjZDDcJMXmSw5uPb/JUU/tjiIDN?= =?us-ascii?Q?nyDkNmFmw6lt1YY2ydYaA6r5bqSFrUfoECJJPF/aV3L2mWVmSUDlgAah9YHS?= =?us-ascii?Q?mccbV9Lz85+K+l0cwAL8fs5M8zoNbM/X3oRhd3OwtuuHXCtfsB249l1lhcco?= =?us-ascii?Q?BzmNZXA2h/FnaambOP2hFv655uwLm1O3PGFxY59w2pUWR1+E7tuv15hFKZde?= =?us-ascii?Q?f68ti2xavpdaEOomicJFlfRh0CrrozVlrhs5YWWeRMpQCoqkti44uSeFD1Pz?= =?us-ascii?Q?W/9V24dOey9rfFMeftzRiEvxSV0kd7C4/I+Z/HLih9yUKiK99zAHLHWc01Y2?= =?us-ascii?Q?H9tnGAkf2sQBjxFZePrgtFUmbc8sCBbQ4+hxSO+1tGGaYP90d8LUe94dPGVy?= =?us-ascii?Q?vC/3AQpm31YruLpFeNbDszbrPKVZnG9lrvQXn1YXAlF8NtDddOxhaTUk5EQx?= =?us-ascii?Q?IoBnLc1nyVWORgzTVxOwXyS6M1KMIGDC27uFXpL/n5vg/XIiEDpogV6fnKlo?= =?us-ascii?Q?2waI5SHanm4TLfzjwY2PWY3D/MG8AJ7V5D3j8Cqarpb3exLdjKkUaPcW8z6f?= =?us-ascii?Q?xHAI53rs9wI4hTZm3rniQ/DI+ak0ZJptSuXhwZ6bYhzoSSu2vT6IlN+SzUGN?= =?us-ascii?Q?ggkHPP+F0C0FEXyy65/G5/pUD8E+PddItdAIXYeZO/yLwvvWEVoDwRYIxwLk?= =?us-ascii?Q?Amrk4XV/FnZDwNzYyrKIIXdN+vKqdBHuiPIK8MgWPw7g5q4CGXVaUut7XkJl?= =?us-ascii?Q?0+H0hpZB+SqjETg6zpCUuN1f8NYyy1KOCbPXSaitk1H1Kq3Hjk7xlSsu7M4D?= =?us-ascii?Q?aaWPD51L4H+n7MH6eVRw8jB46zgIGD6fsW3FCuMa5ADNBTxWDRz8JUCd4uCF?= =?us-ascii?Q?9wP+/ijtyuVs7V/+MuFF+ArDK8g0ScLwsBMck+S3Kr/0kQTlFC3yA5gbyyks?= =?us-ascii?Q?MGqlPAa2IJJg+tknIcFFgGBOBet5f11qTASpohH3cQYjzSyfLbJN2xRJoSer?= =?us-ascii?Q?z5SGj1EnjG9iP2UIBebxWgYvgE31cMGHiJ1ZPtToxx2RpyNcp7ZfeelliVdJ?= =?us-ascii?Q?0jtOX95zwyfrVNUj8rl7tr3ehmh7fR6I7YtsLMDJWef59rYWgkhoAYj6L+Vv?= =?us-ascii?Q?W/sOmm/YfgECCUvRte+k8WWTdsQGUUS8R3cDGtF2LB5wttJ5?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: 249dfc55-7fe6-44ad-56e9-08de890f5de4 X-MS-Exchange-CrossTenant-AuthSource: DS7PR12MB9473.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Mar 2026 19:07:02.7903 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 86WIQ1nBA7YlUSh0RjqgcTcy++yerUUW2gpokJ6+I++Ngh0qKW6uoTEasyDkgHBb X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS0PR12MB7607 Content-Type: text/plain; charset="utf-8" READ_ONLY_THP_FOR_FS is no longer present, remove related test. Signed-off-by: Zi Yan --- tools/testing/selftests/mm/khugepaged.c | 197 +----------------------- 1 file changed, 3 insertions(+), 194 deletions(-) diff --git a/tools/testing/selftests/mm/khugepaged.c b/tools/testing/selfte= sts/mm/khugepaged.c index 3fe7ef04ac62..842311682833 100644 --- a/tools/testing/selftests/mm/khugepaged.c +++ b/tools/testing/selftests/mm/khugepaged.c @@ -37,7 +37,6 @@ static int anon_order; =20 enum vma_type { VMA_ANON, - VMA_FILE, VMA_SHMEM, }; =20 @@ -49,7 +48,6 @@ struct mem_ops { const char *name; }; =20 -static struct mem_ops *file_ops; static struct mem_ops *anon_ops; static struct mem_ops *shmem_ops; =20 @@ -112,8 +110,6 @@ static void restore_settings(int sig) static void save_settings(void) { printf("Save THP and khugepaged settings..."); - if (file_ops && finfo.type =3D=3D VMA_FILE) - thp_set_read_ahead_path(finfo.dev_queue_read_ahead_path); thp_save_settings(); =20 success("OK"); @@ -125,89 +121,6 @@ static void save_settings(void) signal(SIGQUIT, restore_settings); } =20 -static void get_finfo(const char *dir) -{ - struct stat path_stat; - struct statfs fs; - char buf[1 << 10]; - char path[PATH_MAX]; - char *str, *end; - - finfo.dir =3D dir; - stat(finfo.dir, &path_stat); - if (!S_ISDIR(path_stat.st_mode)) { - printf("%s: Not a directory (%s)\n", __func__, finfo.dir); - exit(EXIT_FAILURE); - } - if (snprintf(finfo.path, sizeof(finfo.path), "%s/" TEST_FILE, - finfo.dir) >=3D sizeof(finfo.path)) { - printf("%s: Pathname is too long\n", __func__); - exit(EXIT_FAILURE); - } - if (statfs(finfo.dir, &fs)) { - perror("statfs()"); - exit(EXIT_FAILURE); - } - finfo.type =3D fs.f_type =3D=3D TMPFS_MAGIC ? VMA_SHMEM : VMA_FILE; - if (finfo.type =3D=3D VMA_SHMEM) - return; - - /* Find owning device's queue/read_ahead_kb control */ - if (snprintf(path, sizeof(path), "/sys/dev/block/%d:%d/uevent", - major(path_stat.st_dev), minor(path_stat.st_dev)) - >=3D sizeof(path)) { - printf("%s: Pathname is too long\n", __func__); - exit(EXIT_FAILURE); - } - if (read_file(path, buf, sizeof(buf)) < 0) { - perror("read_file(read_num)"); - exit(EXIT_FAILURE); - } - if (strstr(buf, "DEVTYPE=3Ddisk")) { - /* Found it */ - if (snprintf(finfo.dev_queue_read_ahead_path, - sizeof(finfo.dev_queue_read_ahead_path), - "/sys/dev/block/%d:%d/queue/read_ahead_kb", - major(path_stat.st_dev), minor(path_stat.st_dev)) - >=3D sizeof(finfo.dev_queue_read_ahead_path)) { - printf("%s: Pathname is too long\n", __func__); - exit(EXIT_FAILURE); - } - return; - } - if (!strstr(buf, "DEVTYPE=3Dpartition")) { - printf("%s: Unknown device type: %s\n", __func__, path); - exit(EXIT_FAILURE); - } - /* - * Partition of block device - need to find actual device. - * Using naming convention that devnameN is partition of - * device devname. - */ - str =3D strstr(buf, "DEVNAME=3D"); - if (!str) { - printf("%s: Could not read: %s", __func__, path); - exit(EXIT_FAILURE); - } - str +=3D 8; - end =3D str; - while (*end) { - if (isdigit(*end)) { - *end =3D '\0'; - if (snprintf(finfo.dev_queue_read_ahead_path, - sizeof(finfo.dev_queue_read_ahead_path), - "/sys/block/%s/queue/read_ahead_kb", - str) >=3D sizeof(finfo.dev_queue_read_ahead_path)) { - printf("%s: Pathname is too long\n", __func__); - exit(EXIT_FAILURE); - } - return; - } - ++end; - } - printf("%s: Could not read: %s\n", __func__, path); - exit(EXIT_FAILURE); -} =20 static bool check_swap(void *addr, unsigned long size) { @@ -364,77 +277,6 @@ static bool anon_check_huge(void *addr, int nr_hpages) return check_huge_anon(addr, nr_hpages, hpage_pmd_size); } =20 -static void *file_setup_area(int nr_hpages) -{ - int fd; - void *p; - unsigned long size; - - unlink(finfo.path); /* Cleanup from previous failed tests */ - printf("Creating %s for collapse%s...", finfo.path, - finfo.type =3D=3D VMA_SHMEM ? " (tmpfs)" : ""); - fd =3D open(finfo.path, O_DSYNC | O_CREAT | O_RDWR | O_TRUNC | O_EXCL, - 777); - if (fd < 0) { - perror("open()"); - exit(EXIT_FAILURE); - } - - size =3D nr_hpages * hpage_pmd_size; - p =3D alloc_mapping(nr_hpages); - fill_memory(p, 0, size); - write(fd, p, size); - close(fd); - munmap(p, size); - success("OK"); - - printf("Opening %s read only for collapse...", finfo.path); - finfo.fd =3D open(finfo.path, O_RDONLY, 777); - if (finfo.fd < 0) { - perror("open()"); - exit(EXIT_FAILURE); - } - p =3D mmap(BASE_ADDR, size, PROT_READ, - MAP_PRIVATE, finfo.fd, 0); - if (p =3D=3D MAP_FAILED || p !=3D BASE_ADDR) { - perror("mmap()"); - exit(EXIT_FAILURE); - } - - /* Drop page cache */ - write_file("/proc/sys/vm/drop_caches", "3", 2); - success("OK"); - return p; -} - -static void file_cleanup_area(void *p, unsigned long size) -{ - munmap(p, size); - close(finfo.fd); - unlink(finfo.path); -} - -static void file_fault(void *p, unsigned long start, unsigned long end) -{ - if (madvise(((char *)p) + start, end - start, MADV_POPULATE_READ)) { - perror("madvise(MADV_POPULATE_READ"); - exit(EXIT_FAILURE); - } -} - -static bool file_check_huge(void *addr, int nr_hpages) -{ - switch (finfo.type) { - case VMA_FILE: - return check_huge_file(addr, nr_hpages, hpage_pmd_size); - case VMA_SHMEM: - return check_huge_shmem(addr, nr_hpages, hpage_pmd_size); - default: - exit(EXIT_FAILURE); - return false; - } -} - static void *shmem_setup_area(int nr_hpages) { void *p; @@ -477,14 +319,6 @@ static struct mem_ops __anon_ops =3D { .name =3D "anon", }; =20 -static struct mem_ops __file_ops =3D { - .setup_area =3D &file_setup_area, - .cleanup_area =3D &file_cleanup_area, - .fault =3D &file_fault, - .check_huge =3D &file_check_huge, - .name =3D "file", -}; - static struct mem_ops __shmem_ops =3D { .setup_area =3D &shmem_setup_area, .cleanup_area =3D &shmem_cleanup_area, @@ -576,7 +410,7 @@ static void khugepaged_collapse(const char *msg, char *= p, int nr_hpages, } =20 /* - * For file and shmem memory, khugepaged only retracts pte entries after + * For shmem memory, khugepaged only retracts pte entries after * putting the new hugepage in the page cache. The hugepage must be * subsequently refaulted to install the pmd mapping for the mm. */ @@ -603,7 +437,7 @@ static struct collapse_context __madvise_context =3D { =20 static bool is_tmpfs(struct mem_ops *ops) { - return ops =3D=3D &__file_ops && finfo.type =3D=3D VMA_SHMEM; + return finfo.type =3D=3D VMA_SHMEM; } =20 static bool is_anon(struct mem_ops *ops) @@ -1084,10 +918,7 @@ static void usage(void) fprintf(stderr, "\nUsage: ./khugepaged [OPTIONS] [dir]\n\n"); fprintf(stderr, "\t\t: :\n"); fprintf(stderr, "\t\t: [all|khugepaged|madvise]\n"); - fprintf(stderr, "\t\t: [all|anon|file|shmem]\n"); - fprintf(stderr, "\n\t\"file,all\" mem_type requires [dir] argument\n"); - fprintf(stderr, "\n\t\"file,all\" mem_type requires kernel built with\n"); - fprintf(stderr, "\tCONFIG_READ_ONLY_THP_FOR_FS=3Dy\n"); + fprintf(stderr, "\t\t: [all|anon|shmem]\n"); fprintf(stderr, "\n\tif [dir] is a (sub)directory of a tmpfs mount, tmpfs= must be\n"); fprintf(stderr, "\tmounted with huge=3Dadvise option for khugepaged tests= to work\n"); fprintf(stderr, "\n\tSupported Options:\n"); @@ -1143,26 +974,16 @@ static void parse_test_type(int argc, char **argv) usage(); =20 if (!strcmp(buf, "all")) { - file_ops =3D &__file_ops; anon_ops =3D &__anon_ops; shmem_ops =3D &__shmem_ops; } else if (!strcmp(buf, "anon")) { anon_ops =3D &__anon_ops; - } else if (!strcmp(buf, "file")) { - file_ops =3D &__file_ops; } else if (!strcmp(buf, "shmem")) { shmem_ops =3D &__shmem_ops; } else { usage(); } =20 - if (!file_ops) - return; - - if (argc !=3D 2) - usage(); - - get_finfo(argv[1]); } =20 int main(int argc, char **argv) @@ -1228,37 +1049,27 @@ int main(int argc, char **argv) } while (0) =20 TEST(collapse_full, khugepaged_context, anon_ops); - TEST(collapse_full, khugepaged_context, file_ops); TEST(collapse_full, khugepaged_context, shmem_ops); TEST(collapse_full, madvise_context, anon_ops); - TEST(collapse_full, madvise_context, file_ops); TEST(collapse_full, madvise_context, shmem_ops); =20 TEST(collapse_empty, khugepaged_context, anon_ops); TEST(collapse_empty, madvise_context, anon_ops); =20 TEST(collapse_single_pte_entry, khugepaged_context, anon_ops); - TEST(collapse_single_pte_entry, khugepaged_context, file_ops); TEST(collapse_single_pte_entry, khugepaged_context, shmem_ops); TEST(collapse_single_pte_entry, madvise_context, anon_ops); - TEST(collapse_single_pte_entry, madvise_context, file_ops); TEST(collapse_single_pte_entry, madvise_context, shmem_ops); =20 TEST(collapse_max_ptes_none, khugepaged_context, anon_ops); - TEST(collapse_max_ptes_none, khugepaged_context, file_ops); TEST(collapse_max_ptes_none, madvise_context, anon_ops); - TEST(collapse_max_ptes_none, madvise_context, file_ops); =20 TEST(collapse_single_pte_entry_compound, khugepaged_context, anon_ops); - TEST(collapse_single_pte_entry_compound, khugepaged_context, file_ops); TEST(collapse_single_pte_entry_compound, madvise_context, anon_ops); - TEST(collapse_single_pte_entry_compound, madvise_context, file_ops); =20 TEST(collapse_full_of_compound, khugepaged_context, anon_ops); - TEST(collapse_full_of_compound, khugepaged_context, file_ops); TEST(collapse_full_of_compound, khugepaged_context, shmem_ops); TEST(collapse_full_of_compound, madvise_context, anon_ops); - TEST(collapse_full_of_compound, madvise_context, file_ops); TEST(collapse_full_of_compound, madvise_context, shmem_ops); =20 TEST(collapse_compound_extreme, khugepaged_context, anon_ops); @@ -1280,10 +1091,8 @@ int main(int argc, char **argv) TEST(collapse_max_ptes_shared, madvise_context, anon_ops); =20 TEST(madvise_collapse_existing_thps, madvise_context, anon_ops); - TEST(madvise_collapse_existing_thps, madvise_context, file_ops); TEST(madvise_collapse_existing_thps, madvise_context, shmem_ops); =20 - TEST(madvise_retracted_page_tables, madvise_context, file_ops); TEST(madvise_retracted_page_tables, madvise_context, shmem_ops); =20 restore_settings(0); --=20 2.43.0 From nobody Sun Apr 5 16:28:55 2026 Received: from SA9PR02CU001.outbound.protection.outlook.com (mail-southcentralusazon11013055.outbound.protection.outlook.com [40.93.196.55]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 9F182347503; Mon, 23 Mar 2026 19:07:16 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.93.196.55 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774292838; cv=fail; b=Fd0G5KMka4KG7kJtxaUDClx9epqy73ZS1m9BhCr81LtWiIeEphasj2dXGD9BgO0rU25K32kI+1swd8B79rBM1Qyum3aIFOt/MRiC1peMPKFpq5OdRfpESNQZgYks55mKaP7tAv0eR5fTs31GblcrUQgzso3w9vcsB2ujk46CPnE= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774292838; c=relaxed/simple; bh=BpZca8bCgjwWJzRtTPus66o5RSKHiUTYOyT254Hz4BE=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=UoCjc00C6A+jJIPMA0Q8hcAN4A9XAp33l1ZckRY/lHDvTarHOr77xoL3+kx+yaJ+SBL+45pTKdpenULDf7FytLERH1nCCMnUOUTvVhN+Y81kK52RD8NqbJ/eqKFe/rEEZv5eydXXr6oSt9Q52K3ETVcCCPiNArKib3rhfYT7wU4= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com; spf=fail smtp.mailfrom=nvidia.com; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b=GufidYv+; arc=fail smtp.client-ip=40.93.196.55 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com Authentication-Results: smtp.subspace.kernel.org; spf=fail smtp.mailfrom=nvidia.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b="GufidYv+" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=MlcsRmgwgKJtgrwmQKWbaTJGRDiyPBua9JQ1e47XUM8k2HClGzkbbhI7QZCxQ/loXh1hlKpk+D/tmJF20hJajpWOifRZFunOYQfLDyODTa0fu0kZdn+74Otb+nchZUrrd6/jT5Lz6a++zO85v08DaL0evmEAtYDTm1MwttX4z8qBKJL8tyw2kZ7O2Dlw0dORHKWhuPFsZRviUyQ7IRM7ujsb2IwSQ0Ak24D3MLU3n+9cK/PgeK1UJE23FgFsgmkA3DpQ/OITviz8VcissT9pvlKConBq9p9BItU1xz1vcTWQxzNQLPgv1k79owRkouf4nm48bDyTj3HtSXPUfhpv4Q== 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=yKXNE/HKJMx/bJ/qdkKaJVVdI2g0xgHu43iBYA3cQmI=; b=R+fLMgwFEM59pMqabBBp2Ye8oF2DUv8hrO0Tq7PrvOjvmthhNwnPREBl0BZy34UUnXfXgOl6FElI739KjdD/dhbB+rb5hU+mDTWLLoxHhi+BeCg/heWcxRNr33rVoCsw9KGYAqbbO0h+4Msg1IMpJyhXRpMvokA8yWOSfDcX8X3oik48WtdplXvoeUSKOSR+9g2ynMMWueflerZQejORDGV8UQhuS5LXbBrV3p47t9HZJD9vb7B356r3AQ3A7fgHf7uy7tQxaD/pzmhDKB29l/ExdCb61GViCZudLSHh9y78Lrk79wuyiAUjyUer02XpqUaCrZOOoTD9G3IHhIffyg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=yKXNE/HKJMx/bJ/qdkKaJVVdI2g0xgHu43iBYA3cQmI=; b=GufidYv+ymdp11hBEuwrwSSkDxsMVL6dLLGiQmtli+J+uy0NDT9sclUcInK4VIcWNDPLUp2VfIO7JyzfnFC/tvgjDu3y9nNDofQLaxbb38ksuILmd0fDGO9SWsn95jIDndY05R4gJOA8rak7znRH9s3K4Xel97hp7XDWbBqi9u1vW5K0OprTCMYoqqZrFZ7/pAcv4bumsg4K6XBE1Ct2rNSJxj0qgyOT9/lgVCMoccAceVCztRLYJ3LRTp6Wiyn7usIiYGnxSN2onO1sUZiNI7gXAh95ZJpDGZ+/jCugtw3Z7s6zgEg33UhqAEbWkFtrocQYAqc14zb9WwmljZ9RTQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; Received: from DS7PR12MB9473.namprd12.prod.outlook.com (2603:10b6:8:252::5) by DS0PR12MB7607.namprd12.prod.outlook.com (2603:10b6:8:13f::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9745.20; Mon, 23 Mar 2026 19:07:04 +0000 Received: from DS7PR12MB9473.namprd12.prod.outlook.com ([fe80::f01d:73d2:2dda:c7b2]) by DS7PR12MB9473.namprd12.prod.outlook.com ([fe80::f01d:73d2:2dda:c7b2%4]) with mapi id 15.20.9745.007; Mon, 23 Mar 2026 19:07:04 +0000 From: Zi Yan To: "Matthew Wilcox (Oracle)" , Song Liu Cc: Chris Mason , David Sterba , Alexander Viro , Christian Brauner , Jan Kara , Andrew Morton , David Hildenbrand , Lorenzo Stoakes , Zi Yan , Baolin Wang , "Liam R. Howlett" , Nico Pache , Ryan Roberts , Dev Jain , Barry Song , Lance Yang , Vlastimil Babka , Mike Rapoport , Suren Baghdasaryan , Michal Hocko , Shuah Khan , linux-btrfs@vger.kernel.org, linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org, linux-mm@kvack.org, linux-kselftest@vger.kernel.org Subject: [RFC PATCH 11/11] selftests/mm: remove READ_ONLY_THP_FOR_FS test in guard-regions Date: Mon, 23 Mar 2026 15:06:44 -0400 Message-ID: <20260323190644.1714379-12-ziy@nvidia.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260323190644.1714379-1-ziy@nvidia.com> References: <20260323190644.1714379-1-ziy@nvidia.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: BL1P221CA0012.NAMP221.PROD.OUTLOOK.COM (2603:10b6:208:2c5::6) To DS7PR12MB9473.namprd12.prod.outlook.com (2603:10b6:8:252::5) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DS7PR12MB9473:EE_|DS0PR12MB7607:EE_ X-MS-Office365-Filtering-Correlation-Id: 3221c15f-b54a-4678-bc5c-08de890f5ebd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|376014|7416014|366016|56012099003|18002099003|22082099003; X-Microsoft-Antispam-Message-Info: 0Ha8LUGxDRvmSiCLbN2Dmie1RvUCd2dSt0AGGGWR0Dbjb9ie/CnliE/eFTuIHO4Y5gml/qjMkPJd0CkasZgNILomG1Iq61eUIzi0TFZd2URsSx94dicCeYS24xm+3iniwsruSD/PBuPW8unw5a0QLxbtoSQCdVsd460XCHD6zX7KZSz5+LpW4Z7hsN9Ch+xHrt3xWpPuQgWouakqOd4Zg8i1VKCkb4rWtjrrsmMctUs9+60wCtWXldb3+CJavjizjkFjN1pfwDFofx2D7EQky30jHpQ69VOUprjcr2Q2bctzWGGx2n/zZerRn92V+kKN7ij2xn+OnVH0JmW4JGuqWNxAN5lMd0sAgbKlh1EGN821OL6Pt+McvpQzBq+rXdM+qHcU6eiu1ryfVRPjlb417CMc6/ZdcoLkZlltCzbn0nljIZaJzprt/CsPvBm5mhYWSs1nkM1/pXeuf40wlIvCCccdXNA8AQggrajWkDBeBRM3HYh3AmSwRoa0g6uHHqbp0bhMgCED7StxpVybA6Of9JRpAj+Tr82VMffF/gx5SBVKKD4A8BBmJ0SgcK97tgNHl0b6+yDh5KATnHCmSCT9H3kKLmhWsS+zXSFNw1p8pbGFieNjBefZzfasBWGeyj+TL/ym5VaXlKC1u23UugD0W/jeaxvv4dCKBsXitAfwdt1CDkBT+wmO+FFMb70aB2yQrYJFf2NOjWb6Lp4PwBb4CxTF29cbh1uINa4Q8QbT2HU= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR12MB9473.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(376014)(7416014)(366016)(56012099003)(18002099003)(22082099003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?HuSkVY/AROSzfYJezdQs+OgHMV1bqtTq+KHcD4cMPORfi1JPnwE3n9/0jAQv?= =?us-ascii?Q?J1raPUIED2RsZS2Ql9tBQR/T9J09P6wcaCYWWbmrx0m6fj/2LEmgsVIOeS2B?= =?us-ascii?Q?drJzsHF/MZRwazs7ekS7Qc7ZGgysy+Mk69FFa5dEhy8oC2V38MFmRtNn9Ap6?= =?us-ascii?Q?hsbiM+FoOEezMwNkaTjnTet5iKr3rkjDBa/OjOKyEwODRzkP5AjRNw4T/AaU?= =?us-ascii?Q?lrpu37wqdPLFP3323zVpfDXrh6OxBX48SwKof4b5mAVe1j05liRZpUhToVjR?= =?us-ascii?Q?CspM+5a9XMPThzGzTwQ2tF5p0FaH397Q7QmouYaTOmsiryftDIDQcOOPcnnV?= =?us-ascii?Q?GuAknMRo+KEHE+ywL9ums3kETPD5SICGc/EeUap+VxnrraojVc3wJQLquSj+?= =?us-ascii?Q?31OAT4v8/ij1gURkDKM9RYK+IM+DDLEwGgbIAJqo69xc+OfAdPR5rgG7T9f2?= =?us-ascii?Q?7337hD+IAmcfx0VeHetIhC4XLRM2H4lyY1gNlablfxxKfwqqRRKZ7IOO1du+?= =?us-ascii?Q?Yrke+fMn1Oksd1trDSMWJxMHuxOJt7HyZEW97ggHJu26l34ZXIQtBwge/ib1?= =?us-ascii?Q?uEw4Ma+ZgLm49bgh6lTfGEdVqxyv9MICGR4cx+/yM/cU0yuBA9Ecm6KStQl0?= =?us-ascii?Q?e7t41eXpEOHCzNrA+8IDp8JCiusV/mi3s2xIekEfqm/I/3nbW/GmmfPcqwXd?= =?us-ascii?Q?C1EO3LBKP5PyGIE5EaNAgxGIKQBIUyHuF8/t8fwleNyDnHD9+22zuM5UIbbm?= =?us-ascii?Q?DV9hUi+uraZFv/suxiVZJRUUtjapt2iAb2cQPKELwTfoLg8MKZhzs81jgg3z?= =?us-ascii?Q?LP0eyClN46/h7zq3+rEg2LhLPBed/UjKSFgY07bdYhxqBvzmK94TCmRlKhog?= =?us-ascii?Q?qPkvAWs3UiE59eSTDWmsrWLajx3q2wOEMP1m9aplyiKKhaRhDnv5IP9Y3hX8?= =?us-ascii?Q?bABe822EMCDwGbOKcNVSu3jIyY6wov8ztmYIECseigopa96aWttuMVZNMYe6?= =?us-ascii?Q?f4jnAYGT3xVpL+QMot1LTT4ckN3C1o01SmiqLu0PypvO4e33H+c7dCxoVuUz?= =?us-ascii?Q?gPQ9cM0hHQhkwLbHmgD6RD4qIZEG9NbfAu6GQ3FeOOmpp/bdp9aJpZET7gci?= =?us-ascii?Q?xORoHuBvggn6N3s3TfmpBc2FtJCDpBg7fYjO2uDg0dg7BDfwjAhKRF4XwoTs?= =?us-ascii?Q?VKojniCF5mEdXIwyrK4J1qbJLEkxUzuPlRmZSSARjcSQ+W/jc7Z5hCqucXOZ?= =?us-ascii?Q?AdhHUVeuC74ojdiah+mkWPt2dTd1v7fhP1BS2F869CRAyyN0SjAvuw+veqOf?= =?us-ascii?Q?p14+55WFwQjqOhRvyS75q/J7hDePsFcbDe0vz8iYvsDDXlBusL9IJ8Bydahk?= =?us-ascii?Q?4TDtQhSr3S2EHKZq1STttlNzrUqIJXYgQEu9yAuzgp9dgOhxt0DP6XCd83E4?= =?us-ascii?Q?Jz8Fu2zuPjSKgwTUvjlR4q7ZUnRnxpMZpUSv9AEmLp04QZd95d1MWzZPVSFf?= =?us-ascii?Q?+X0GpfJFYhAE5Jvk3Q4/nK9VjnCdscFRDG9ho1Sxln+XPHE3yIlpAtIVqccB?= =?us-ascii?Q?7wwsWxxRQ3coBBSZFmVJuko3YEoTknPPnUktZTa61LyM8jqTctKePsHy/rFq?= =?us-ascii?Q?rfde+5xSdPs/XPre1v4Wnqj5H8lIc/NXPVrPmPiaM4fWoNL0DmUukWEGgIHm?= =?us-ascii?Q?+8AB1RMGMGPMLXo8Ovv3Yw1SvroDi2KAcQY+JDLioiOAK30k?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: 3221c15f-b54a-4678-bc5c-08de890f5ebd X-MS-Exchange-CrossTenant-AuthSource: DS7PR12MB9473.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Mar 2026 19:07:04.1541 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: GgloJhvqcENDWV3AdfjXn99pjdSSvlucji4tfGk/Qw6cuoQ2V76PyDC+GxlYYp4G X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS0PR12MB7607 Content-Type: text/plain; charset="utf-8" READ_ONLY_THP_FOR_FS is no longer present, remove related test. Signed-off-by: Zi Yan --- tools/testing/selftests/mm/guard-regions.c | 148 +-------------------- 1 file changed, 1 insertion(+), 147 deletions(-) diff --git a/tools/testing/selftests/mm/guard-regions.c b/tools/testing/sel= ftests/mm/guard-regions.c index 48e8b1539be3..fc8b2a4e7ba2 100644 --- a/tools/testing/selftests/mm/guard-regions.c +++ b/tools/testing/selftests/mm/guard-regions.c @@ -42,7 +42,6 @@ static sigjmp_buf signal_jmp_buf; enum backing_type { ANON_BACKED, SHMEM_BACKED, - LOCAL_FILE_BACKED, }; =20 FIXTURE(guard_regions) @@ -67,11 +66,6 @@ FIXTURE_VARIANT_ADD(guard_regions, shmem) .backing =3D SHMEM_BACKED, }; =20 -FIXTURE_VARIANT_ADD(guard_regions, file) -{ - .backing =3D LOCAL_FILE_BACKED, -}; - static bool is_anon_backed(const FIXTURE_VARIANT(guard_regions) * variant) { switch (variant->backing) { @@ -98,7 +92,6 @@ static void *mmap_(FIXTURE_DATA(guard_regions) * self, offset =3D 0; break; case SHMEM_BACKED: - case LOCAL_FILE_BACKED: flags |=3D MAP_SHARED; fd =3D self->fd; break; @@ -198,18 +191,6 @@ static void teardown_sighandler(void) sigaction(SIGSEGV, &act, NULL); } =20 -static int open_file(const char *prefix, char *path) -{ - int fd; - - snprintf(path, PATH_MAX, "%sguard_regions_test_file_XXXXXX", prefix); - fd =3D mkstemp(path); - if (fd < 0) - ksft_exit_fail_perror("mkstemp"); - - return fd; -} - /* Establish a varying pattern in a buffer. */ static void set_pattern(char *ptr, size_t num_pages, size_t page_size) { @@ -262,54 +243,6 @@ static bool is_buf_eq(char *buf, size_t size, char chr) return true; } =20 -/* - * Some file systems have issues with merging due to changing merge-sensit= ive - * parameters in the .mmap callback, and prior to .mmap_prepare being - * implemented everywhere this will now result in an unexpected failure to - * merge (e.g. - overlayfs). - * - * Perform a simple test to see if the local file system suffers from this= , if - * it does then we can skip test logic that assumes local file system merg= ing is - * sane. - */ -static bool local_fs_has_sane_mmap(FIXTURE_DATA(guard_regions) * self, - const FIXTURE_VARIANT(guard_regions) * variant) -{ - const unsigned long page_size =3D self->page_size; - char *ptr, *ptr2; - struct procmap_fd procmap; - - if (variant->backing !=3D LOCAL_FILE_BACKED) - return true; - - /* Map 10 pages. */ - ptr =3D mmap_(self, variant, NULL, 10 * page_size, PROT_READ | PROT_WRITE= , 0, 0); - if (ptr =3D=3D MAP_FAILED) - return false; - /* Unmap the middle. */ - munmap(&ptr[5 * page_size], page_size); - - /* Map again. */ - ptr2 =3D mmap_(self, variant, &ptr[5 * page_size], page_size, PROT_READ |= PROT_WRITE, - MAP_FIXED, 5 * page_size); - - if (ptr2 =3D=3D MAP_FAILED) - return false; - - /* Now make sure they all merged. */ - if (open_self_procmap(&procmap) !=3D 0) - return false; - if (!find_vma_procmap(&procmap, ptr)) - return false; - if (procmap.query.vma_start !=3D (unsigned long)ptr) - return false; - if (procmap.query.vma_end !=3D (unsigned long)ptr + 10 * page_size) - return false; - close_procmap(&procmap); - - return true; -} - FIXTURE_SETUP(guard_regions) { self->page_size =3D (unsigned long)sysconf(_SC_PAGESIZE); @@ -318,9 +251,6 @@ FIXTURE_SETUP(guard_regions) switch (variant->backing) { case ANON_BACKED: return; - case LOCAL_FILE_BACKED: - self->fd =3D open_file("", self->path); - break; case SHMEM_BACKED: self->fd =3D memfd_create(self->path, 0); break; @@ -1750,55 +1680,6 @@ TEST_F(guard_regions, map_private) ASSERT_EQ(munmap(ptr_private, 10 * page_size), 0); } =20 -/* Test that guard regions established over a read-only mapping function c= orrectly. */ -TEST_F(guard_regions, readonly_file) -{ - const unsigned long page_size =3D self->page_size; - char *ptr; - int i; - - if (variant->backing !=3D LOCAL_FILE_BACKED) - SKIP(return, "Read-only test specific to file-backed"); - - /* Map shared so we can populate with pattern, populate it, unmap. */ - ptr =3D mmap_(self, variant, NULL, 10 * page_size, - PROT_READ | PROT_WRITE, 0, 0); - ASSERT_NE(ptr, MAP_FAILED); - set_pattern(ptr, 10, page_size); - ASSERT_EQ(munmap(ptr, 10 * page_size), 0); - /* Close the fd so we can re-open read-only. */ - ASSERT_EQ(close(self->fd), 0); - - /* Re-open read-only. */ - self->fd =3D open(self->path, O_RDONLY); - ASSERT_NE(self->fd, -1); - /* Re-map read-only. */ - ptr =3D mmap_(self, variant, NULL, 10 * page_size, PROT_READ, 0, 0); - ASSERT_NE(ptr, MAP_FAILED); - - /* Mark every other page guarded. */ - for (i =3D 0; i < 10; i +=3D 2) { - char *ptr_pg =3D &ptr[i * page_size]; - - ASSERT_EQ(madvise(ptr_pg, page_size, MADV_GUARD_INSTALL), 0); - } - - /* Assert that the guard regions are in place.*/ - for (i =3D 0; i < 10; i++) { - char *ptr_pg =3D &ptr[i * page_size]; - - ASSERT_EQ(try_read_buf(ptr_pg), i % 2 !=3D 0); - } - - /* Remove guard regions. */ - ASSERT_EQ(madvise(ptr, 10 * page_size, MADV_GUARD_REMOVE), 0); - - /* Ensure the data is as expected. */ - ASSERT_TRUE(check_pattern(ptr, 10, page_size)); - - ASSERT_EQ(munmap(ptr, 10 * page_size), 0); -} - TEST_F(guard_regions, fault_around) { const unsigned long page_size =3D self->page_size; @@ -2203,17 +2084,6 @@ TEST_F(guard_regions, collapse) if (variant->backing !=3D ANON_BACKED) ASSERT_EQ(ftruncate(self->fd, size), 0); =20 - /* - * We must close and re-open local-file backed as read-only for - * CONFIG_READ_ONLY_THP_FOR_FS to work. - */ - if (variant->backing =3D=3D LOCAL_FILE_BACKED) { - ASSERT_EQ(close(self->fd), 0); - - self->fd =3D open(self->path, O_RDONLY); - ASSERT_GE(self->fd, 0); - } - ptr =3D mmap_(self, variant, NULL, size, PROT_READ, 0, 0); ASSERT_NE(ptr, MAP_FAILED); =20 @@ -2234,13 +2104,7 @@ TEST_F(guard_regions, collapse) /* Allow huge page throughout region. */ ASSERT_EQ(madvise(ptr, size, MADV_HUGEPAGE), 0); =20 - /* - * Now collapse the entire region. This should fail in all cases. - * - * The madvise() call will also fail if CONFIG_READ_ONLY_THP_FOR_FS is - * not set for the local file case, but we can't differentiate whether - * this occurred or if the collapse was rightly rejected. - */ + /* Now collapse the entire region. This should fail in all cases. */ EXPECT_NE(madvise(ptr, size, MADV_COLLAPSE), 0); =20 /* @@ -2298,16 +2162,6 @@ TEST_F(guard_regions, smaps) ASSERT_TRUE(check_vmflag_guard(ptr)); ASSERT_TRUE(check_vmflag_guard(&ptr[5 * page_size])); =20 - /* - * If the local file system is unable to merge VMAs due to having - * unusual characteristics, there is no point in asserting merge - * behaviour. - */ - if (!local_fs_has_sane_mmap(self, variant)) { - TH_LOG("local filesystem does not support sane merging skipping merge te= st"); - return; - } - /* Map a fresh VMA between the two split VMAs. */ ptr2 =3D mmap_(self, variant, &ptr[4 * page_size], page_size, PROT_READ | PROT_WRITE, MAP_FIXED, 4 * page_size); --=20 2.43.0