From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 3625EC83F17 for ; Mon, 14 Jul 2025 17:18:37 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id A292C8D000C; Mon, 14 Jul 2025 13:18:36 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id A00C18D0001; Mon, 14 Jul 2025 13:18:36 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 8F0348D000C; Mon, 14 Jul 2025 13:18:36 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0015.hostedemail.com [216.40.44.15]) by kanga.kvack.org (Postfix) with ESMTP id 7BBBE8D0001 for ; Mon, 14 Jul 2025 13:18:36 -0400 (EDT) Received: from smtpin14.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id F194A12B9F2 for ; Mon, 14 Jul 2025 17:18:35 +0000 (UTC) X-FDA: 83663529390.14.863615E Received: from NAM11-CO1-obe.outbound.protection.outlook.com (mail-co1nam11on2064.outbound.protection.outlook.com [40.107.220.64]) by imf28.hostedemail.com (Postfix) with ESMTP id 2EA75C0006 for ; Mon, 14 Jul 2025 17:18:32 +0000 (UTC) Authentication-Results: imf28.hostedemail.com; dkim=pass header.d=Nvidia.com header.s=selector2 header.b=uqb9co0u; spf=pass (imf28.hostedemail.com: domain of ziy@nvidia.com designates 40.107.220.64 as permitted sender) smtp.mailfrom=ziy@nvidia.com; dmarc=pass (policy=reject) header.from=nvidia.com; arc=pass ("microsoft.com:s=arcselector10001:i=1") ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1752513513; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding:in-reply-to: references:dkim-signature; bh=nEI8SLBGgld3UlayCuyh6P1c0zJCasNO4jDkZHvh3AQ=; b=3YnTgANlzA+CmLS2dJT8pfXd/U8q/9aC8PhdgZMo5dvxvom1Yi94SMpDBNCeMJkz68Yflo PJegfFR9Io+RrsTOAilERe9d0GL1RVvur8I3c0zwjv88EJGRnd4BBc4XTk2DpvucbVHX1N /E8OIfPaXpgO1uIuTUkGYPrNxJID3yg= ARC-Authentication-Results: i=2; imf28.hostedemail.com; dkim=pass header.d=Nvidia.com header.s=selector2 header.b=uqb9co0u; spf=pass (imf28.hostedemail.com: domain of ziy@nvidia.com designates 40.107.220.64 as permitted sender) smtp.mailfrom=ziy@nvidia.com; dmarc=pass (policy=reject) header.from=nvidia.com; arc=pass ("microsoft.com:s=arcselector10001:i=1") ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1752513513; a=rsa-sha256; cv=pass; b=LCj14BaiauaPHmHvMdueB7vnaO3NZA6W9mkiA4IDRw06/XrHOPJ57Khcf7CuPjsiqqrPFf vWr8hXn6lDAualiCPOpfKlCgat1UkVbeZsnnDZGuIMyYR4T+pLDqyicDFyBXVyAS9ndhZ5 nxg8jjN2Jso2i41Ul0jxUWn7/NfUdMI= ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=pY+SU+FofnklO1lgAff1sOhUf/gIM4DasvRZxYvTgabWTAq0iZx3/BID5kmPOAxSFKSxORAkPtjQW7HfjyQW1cE2XoESgF89rpJSpc7tcg4epyit4/KCy4pJbSB2GSircKp+ANLQD+2ipfMuyTsMI1YOtE3MYI7sG4wyDHL2hMVoko3kaqJcnm941T0hRIjO3ljwGYfCFI04W+RNYsivtBI2YqZtjHDRKp2ZGEsOTr2IcS0NzvmxRQtHOjMATGJz28hzTXjos4gHUJAwUicfMf1nTL9qp7/9/XFb/HX9Q5UyLlXNwQKppWAJv9qUTh2xZH4SH6dN6MK+tqwCsUCTOQ== 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=nEI8SLBGgld3UlayCuyh6P1c0zJCasNO4jDkZHvh3AQ=; b=rsKkWqEfx18mrjXaV5yI6wpDPYN8o5uoGR3WA8NIiy5SyDQAsJ0wuJR/gGrpzzDubUu3fRWwvaSSyQ/HSYEAUHekd7i8L7axSdFtVj/ixyPoc/ndNwUW87ykOTfXOyi+X1nwifyOm4zK/wUdqUMc2AipDdaBi4XUXefBf7C2EtRpCDg2N5y6A5X+504XcLDJgr7IlQ1Dl8gE8REvCuUbJaSt5h7MCEbT1lOW5wml/uw+XeCRg+jiupjDwwWn+M06ji6wQLktuZWnH8YragwWUcoCqsVc0tUiU4py9Xpd2C848S1tQwsOThki0ez0AAt9UHsBqYcF/7U98UQgbTeyUg== 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=nEI8SLBGgld3UlayCuyh6P1c0zJCasNO4jDkZHvh3AQ=; b=uqb9co0u8Scgg8/pskxEdvywGdh41b2VvKflXOfId6o/91h1lXvJ3hfkej/kVSM0IX9CuEny3UQa+iewP8r+tiYYG0d5qeXF2ha01edSz0KTy+rSsUb/6G8yJlLrZwoyiWWAjGQrgSOFnRHb1mdwrh5T6OufM+YaKru27T8YafYEdSY7Kji+/2WRQ5jKTJ6DFn0aXg4t8tCNwZ5nPEQfpXl5sA/JvZ2c8ebiKNMi828r02PBpM+rsO0JmWIpJvgyqDL0L/cy0JK6li0St+h5BN6XPIE7azMjM/Fc0ET/o8ryjT5fQNV6HIM2Z29iPVd5YjNN1xxIEGAGmGOmN2qNyQ== Received: from DS7PR12MB9473.namprd12.prod.outlook.com (2603:10b6:8:252::5) by PH7PR12MB7817.namprd12.prod.outlook.com (2603:10b6:510:279::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8880.23; Mon, 14 Jul 2025 17:18:29 +0000 Received: from DS7PR12MB9473.namprd12.prod.outlook.com ([fe80::5189:ecec:d84a:133a]) by DS7PR12MB9473.namprd12.prod.outlook.com ([fe80::5189:ecec:d84a:133a%6]) with mapi id 15.20.8922.023; Mon, 14 Jul 2025 17:18:29 +0000 From: Zi Yan To: Balbir Singh , David Hildenbrand , linux-mm@kvack.org Cc: Andrew Morton , Hugh Dickins , Kirill Shutemov , Lorenzo Stoakes , Zi Yan , Baolin Wang , "Liam R. Howlett" , Nico Pache , Ryan Roberts , Dev Jain , Barry Song , linux-kernel@vger.kernel.org Subject: [PATCH v3 0/2] __folio_split() clean up. Date: Mon, 14 Jul 2025 13:18:21 -0400 Message-ID: <20250714171823.3626213-1-ziy@nvidia.com> X-Mailer: git-send-email 2.47.2 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-ClientProxiedBy: BL1P222CA0009.NAMP222.PROD.OUTLOOK.COM (2603:10b6:208:2c7::14) To DS7PR12MB9473.namprd12.prod.outlook.com (2603:10b6:8:252::5) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DS7PR12MB9473:EE_|PH7PR12MB7817:EE_ X-MS-Office365-Filtering-Correlation-Id: f64304ef-229a-47e4-99af-08ddc2fa73ad X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|1800799024|7416014|376014; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?7DrGOrcPavVxybDbsUnihJ1O0is9rLjKGBxVkPVKBxawoaytzAu+jhnZPFAa?= =?us-ascii?Q?NidQ9tRGHQofOCdfaFZsOrczfNAawXu5rpfde3t34nG6S/MzuNO/Bej+TN7E?= =?us-ascii?Q?082WXLdr3lIxUWjkok2K8/ambZKrn79YEiDVwf9RV8C75+MP7JL4CpHhN2WL?= =?us-ascii?Q?GTzs4yP6Zm3kBZ9YwVWjEIzT7KFp8AyOvX2gsQ+jsBWLuBZYVVYFhHxTULfU?= =?us-ascii?Q?vvrjtVJ/DBObDCPgikbjJqSE3hG1Z3KusK8QlMYb4B4MZP8pUZoFnbAwaleR?= =?us-ascii?Q?TcWG1Dem3nrgcEoNHO92r3TZkkxUYf29Sqf+4m7Hz950/r/s/imgFLzRsXjB?= =?us-ascii?Q?6YmUIK3dTcbDP2wRN87vDs0R4SEuGWQ4KlhywxE+SEfqg24cul/OnwQU3erP?= =?us-ascii?Q?8Uok2tghWBggYO5alpFiBT9M+7RXkqMly6FWbXTS+hu8msLLvESFaN9CMKRf?= =?us-ascii?Q?f/H7LrjTFZD/XI4F6ruDNsomxfMxwDS0t4mLAFE3NDY34nbLEZffl7JXp1rY?= =?us-ascii?Q?/7+LH8ttisiCxt6+a+lSyA/jXjEvV7SMo7cSa8NRhflqPgdUf5UHRnHNnwzC?= =?us-ascii?Q?aqFql+/GdMcIbtmOZOFBb/LrRzGBSQb1PNUUqa4wK16aF8AksPPMxXZyYkEd?= =?us-ascii?Q?Vx1kni0gkE02O6b01aKaFsExJdOmeBh0fLzB/zlUg5VMVnnpyZsLNqXXvnzD?= =?us-ascii?Q?3N/ydVETmobap5nRNCJS2x2Afw4KO//TdpU5jdnM4Xf0N+NJ23aFwO7Q8Nq0?= =?us-ascii?Q?cQT7FbP3OEwhLsqnmOA5WI2Ki3KqV6DhIGm5SaAl0P2ZTcf3v0GJHp+nV0Rm?= =?us-ascii?Q?dLW8EvLxAO1NfQBfXvO8Jl5asyq5drMdAlCWSOcBbl4yhiQI+qRbEbH0Kk6x?= =?us-ascii?Q?JMFqYFRV7AxAKdyECv5uXPZQxjl3kq8csVkHwNGjBrPJfpiEJq9ptyrVu7J0?= =?us-ascii?Q?Hbzjsz5CLc//jd+4FaRFB3VH0lw/LgDJOLNu3kHEbyEw4+CQdbmbP1CGStpj?= =?us-ascii?Q?B0XtmhLANmeBrZK5mXcNliYhzJr35PZRzOBRXCPF4D2meLtbIpC8MGjrCqKj?= =?us-ascii?Q?qsmKIMRfA58zToVqGOeqnzdXC/yhTAmQKwkNvr1s0ttR682nwXcVq4003vQJ?= =?us-ascii?Q?XAMdZaihyZMu52ZKnYcwO4W8bX0vQ6PcwxzPvuJsmv4b5KkjOONWfBZVn+Gn?= =?us-ascii?Q?39+Q7S4hsRoPUeYqhqaFhVvsa0pvGg+SkQFuuupOJpgftMLt5MW4g+VzkvJ0?= =?us-ascii?Q?Yk2G0YGHgq0KIctxuyyd9NEkN5KV1N5oZ9okLoZobpe7amXYT59sXl+Iflui?= =?us-ascii?Q?leRHLI39AR/SnOh0+vh9C5RnqUCAI7HJtUSbxy1k2qC8qx60G5bWYu//WDi8?= =?us-ascii?Q?t7/7n6tPj4/Adeypz0Utby+oc3HlAQBcqg7DBGQEIbtTjUV09//dtAUJ39w7?= =?us-ascii?Q?32rzMnwt5aM=3D?= 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)(366016)(1800799024)(7416014)(376014);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?+X7sVY2gi/3muZwKTuxmdhMdzy/6XJ89zcIHmYungJvQFU/484zjlIuUzbya?= =?us-ascii?Q?8QTCEkxnEjwi5USIIx+1nTl2lO8J7ULJD7lhig+uULPYZRl8VBS61TwBLs3y?= =?us-ascii?Q?Q1B+TrrK/1gv5UNZZr3c02sgTXPlNDrxWJPu+2Wpsrt3AAFQdEUey0VS1YJk?= =?us-ascii?Q?f6sKjOmzEdzM0V+zUKwGIdbcKDJB78NCD+peaZCaIiQSxMQEn+0DGyQ0/LnY?= =?us-ascii?Q?5CwXnDimrjl5MSnnVh74O4i0oxh3lXnhkQ5s3uHvdEgxc/nc8SI6fcUteaRZ?= =?us-ascii?Q?YTLnVJGpVEmb+3uW4ZG76QINbZa3HrmftsYZSXcYA6GDjRACqPCpwHy057dS?= =?us-ascii?Q?cWaLQF41F02xcxZQRtBsPlkWvWqa9xSDvOh7Y8lqREhZkc62da39G4uEqDqy?= =?us-ascii?Q?MkuWr082iVr5O6EFknDIFFfK4bMk3z9OvFP0PcXLvwH/+AimtnUIVok7tUlt?= =?us-ascii?Q?SlRofUq+CwlRuPecbew8mB79QaXv7eoaZeR5eoV7tO4TiSFFWjb/214UNaJP?= =?us-ascii?Q?0LRDYRJcp8htlMxkm3h7sVjqK2bU/SKJ1bINIsdpVweKQgkSn2Mr14+DpPDp?= =?us-ascii?Q?3VkeSdMzILfJKJ2p5T1VlJ2MQuh/yZY+9NV+Nsuzu9Rdq+RtJqAEbqjDS0LZ?= =?us-ascii?Q?eX8MPw/dZyQUvkWrHPSb2FkowFz2sKVcdjRdxgBucUHBiBVrUQ1vDHWsz5Dq?= =?us-ascii?Q?DKCSebKS9JMZ7ms8RfRFrB95fu1bGxSwviDyDUprK2o5RUaPNAugce3YVscs?= =?us-ascii?Q?q37m/GkwQuppVxzkAmSm2lfVXTi1ld1T3o3OuIflapVXUjdoWzkmy+f1jlKO?= =?us-ascii?Q?nJ0DSQfwFE+HJ5qACvKoVwrpZny5aznS3wHFOt/YoSVaV560S8JVZTknPebw?= =?us-ascii?Q?5IdzdyJxP9Pgy6tXlwIZx8EVxw4M0czWyPAlPlMHPV4Sf5hansr1jhdq9RoF?= =?us-ascii?Q?OX1JIosguOf4fXCnXKeiiryG+HMvoR7smsxtKz4P6NgCIZXgi+ZTmQ/vDyCL?= =?us-ascii?Q?q005jo0k9BjM2s6w/tq7pClsGKUThx7RXF16oGWdnz2RAsDyeY2XP3sDrFPP?= =?us-ascii?Q?U0lDZPwc8l/KFsg+PT8LbvRUoosJu2gwKBZ9PtyBqEplHbFEN336xyxFAEgT?= =?us-ascii?Q?7iJMIQhuZpm5xY4b4zTD4qRpkG7zfvJyFFahzTYrdo9zjEdnjc4bnA1czChd?= =?us-ascii?Q?na4U2FbHZAjjJ2qYJol8/+w102mOqL8a+U6pUZCdo1qiNzckefaiAjVVgJcV?= =?us-ascii?Q?ABONgnsAnDhYDimcskNpe8Y/qgrArl9SNDoLvS4c8Ta6rTFou65YuqcgB8sL?= =?us-ascii?Q?iKL3rO2lhnwfqR+GXtlvDpGonXO78vEM7hqcbRGD3fMqRdiORAxxaEx+X3Lg?= =?us-ascii?Q?F0A4WBtlExFBbhzLe7oOkxbvfftawyOQATEjmrubTlLZZ6ZfXQ8zCVaDjfDm?= =?us-ascii?Q?eO/DBqG2c1DVSTI+7Q6NQUgcV3bi/C95+gx/NWmiPycR0Rrc3he671Ec7bIK?= =?us-ascii?Q?fxV4L4wEeq11bdRws32DpTo7xUw9en4JgvF+FGxJASMXf2GENsobNPK6Cx6a?= =?us-ascii?Q?Q0xnQmxp/MQXFShxttrMAvYQc1leCtfuAvcK1wJ0?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: f64304ef-229a-47e4-99af-08ddc2fa73ad X-MS-Exchange-CrossTenant-AuthSource: DS7PR12MB9473.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Jul 2025 17:18:29.6183 (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: OvL9Cv7mCiU5N3P65mSplbN78Nj/UAVbFp6rOmsZcbd23rHjnlrqjKMAgVMljKrj X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR12MB7817 X-Rspamd-Queue-Id: 2EA75C0006 X-Stat-Signature: uaqqor4esxiebjp5y9asxhiztph5jwxk X-Rspamd-Server: rspam02 X-Rspam-User: X-HE-Tag: 1752513512-900795 X-HE-Meta: U2FsdGVkX1/bi7Es6VUEdtgRmigh9rYjwU0cl7OKn7Lau2ervYI5FMu5Bi6eJV/ofHEt4x6dFKF1QFcc+qT+F0cc42sozsX101Jis8kvapMRpdvns4xoCQn0mj2h6OVnI6vvvg7Rgl6MO55ec/Q3dCWQlmuSAER28zcQsM74nnWHSjayUXCyE8UhR9jY4zAKTxsH5uHnMEhM9UZ7qcHaKhPbexuLv4gPERLbdPsnYBOJezujL4pLCwgAMr31PRQPOCgrEd63OBeCpKMhIi2/UvMjFJIOC+YBdHTWM/xvA3/FNJeHguKHhAYK39L90uTa9S28BtGakZHmXxu/LVLSV0wiyPqiR28zIVV62flAOoHTJQtrl77DNX4D38OJLOhrFxkyUpo0+87Cx4Nfot7lfu29vRMx9tRpKRxNeTfZX8HcC2kKNKXZBsj4rGRq3SHB1C77Nedi9WdJA++r7jSuGSs9NCrP7DA0fu7p3UxGRYaT1OwBJw+xiqk3ncNSTcyaME1/PwUd2wBtnuM+rn+HLsLiJ51AIXWH0mAVXnfrvWMTt5wDm6PWN+d/bRkzlis+7Ng5DANyxxoxUndKtiNOPg1jW5FKvQxm/gw+VZKa6FjVmMKJy/WyFjY4l2lppNmAoXD2sSbZ/In/dfwfu5rUS6laD73Mh14ZFHJ6ikxCE4iteaFVrKXMpQH285oNajFXVcZLhxflW5F/XNEh18TLG9vhb0KdcxSN6s9CKx5OEowUz+xrVSnx/1YBPdxGsJUCYfZG2VvwakFj6pOZUxQMFg/c6D/DW2QQXNYsQJQqFkIz0RICV15B/D+U5u7vyNHsVv2qdS+mZu9IIIf/ZUvoMEexIaa2IVm0JEjJuxVghrJtBGCtCbuzuacVNyQIAMnGqLN+3JCoHCg+amYqv8HO4HN3wl1Xa6Bdl4xUfmxUntzURul1B+HnO3m1l7oDIR6d0c9xqRALV4l1o/uDHnC KtqP0Dp9 ND1kmNYywC2g3J8uSYyr3EBA1HrOQwDVhbIz1ONFiiGOMOmCJihrnWy8dh6OfPHjLLlUeVYMztz0IVhwWXqhZdX/o8IAMe8O2jYDM7W6cnGfLcrcH8D63BFLOazNkEcJgxK+z0Zxs0S85sALcngoSWYoW8beNUizNts8jPxw+Fypd0WzTAk7bWArOwn+BoVzO1r+pVv+JK3iL2y7CJJLxVkJjfB7+Trc4NAmeCP5sWG78vET0B9dC4WM8y2HizovOC8GIsFeVGKpcUROZ/kX7FFyXEowWrQ52VtG6xLf3HxLT5xL3QomrX5XKCG7eUT46i2Y+uPckPHNzBcR+1fwm4pDKS3BNp0OGwO3n7IEddwZKZSes/sVBkXIE3NSl5tkVMLJgGtPeFokInlnz4ap+GYXYmbWQnFre1vVqUJ2HkAAIB4aI3PbZaaIUkRXgEPjJFAglezd644DxbBo9ZM+mDpHeZk/RA2Iq7pGi3SraWWvgSMYWDehV/yYRcOsrgamenHfUlThOX70BYNaFynmDUVB/ZeydeFc+N7KMZpQLSL8YRT1yGbrLHeXSiPxum855C/eO X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: Based on the prior discussion[1], this patch improves __split_unmapped_folio() by making it reusable for splitting unmapped folios. This helps avoid the need for a new boolean unmapped parameter to guard mapping-related code. An additional benefit is that __split_unmapped_folio() could be called on after-split folios by __folio_split(). It can enable new split methods. For example, at deferred split time, unmapped subpages can scatter arbitrarily within a large folio, neither uniform nor non-uniform split can maximize after-split folio orders for mapped subpages. The hope is that by calling __split_unmapped_folio() multiple times, a better split result can be achieved. It passed mm selftests. Changelog === >From V2[3]: 1. Code format fixes 2. Restructured code to remove after_split goto label. >From V1[2]: 1. Fixed indentations. 2. Used folio_expected_ref_count() to calculate ref_count instead of open coding. [1] https://lore.kernel.org/linux-mm/94D8C1A4-780C-4BEC-A336-7D3613B54845@nvidia.com/ [2] https://lore.kernel.org/linux-mm/20250711030259.3574392-1-ziy@nvidia.com/ [2] https://lore.kernel.org/linux-mm/20250711182355.3592618-1-ziy@nvidia.com/ Zi Yan (2): mm/huge_memory: move unrelated code out of __split_unmapped_folio() mm/huge_memory: use folio_expected_ref_count() to calculate ref_count. mm/huge_memory.c | 289 +++++++++++++++++++++++------------------------ 1 file changed, 142 insertions(+), 147 deletions(-) -- 2.47.2