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 E0BD5C369B2 for ; Thu, 17 Apr 2025 16:22:38 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 710012800A8; Thu, 17 Apr 2025 12:22:37 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 904F328009B; Thu, 17 Apr 2025 12:22:35 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 708912800A8; Thu, 17 Apr 2025 12:22:35 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id 4C8B328009B for ; Thu, 17 Apr 2025 12:22:35 -0400 (EDT) Received: from smtpin26.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 122CF81BDE for ; Thu, 17 Apr 2025 16:22:36 +0000 (UTC) X-FDA: 83344053912.26.79889FA Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) by imf04.hostedemail.com (Postfix) with ESMTP id 8245640006 for ; Thu, 17 Apr 2025 16:22:32 +0000 (UTC) Authentication-Results: imf04.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2023-11-20 header.b="cW/vMeTt"; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b=jmCfAtEo; dmarc=pass (policy=reject) header.from=oracle.com; arc=pass ("microsoft.com:s=arcselector10001:i=1"); spf=pass (imf04.hostedemail.com: domain of sidhartha.kumar@oracle.com designates 205.220.165.32 as permitted sender) smtp.mailfrom=sidhartha.kumar@oracle.com ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1744906952; a=rsa-sha256; cv=pass; b=5a6cHcr7J56lJs3YifR8UEqPTuVA/jRwcds2GUtnGwkSpx7IbRCMfihTiu6z4+Oe32ukuw YAvmD7cE9HEPNz5X53pRw8hHPm4Edf+KvkumI38+ujwTUgeBP1udBtY9JMN+Qj1Z//r84I AcedSVLfPmkjJcmkcGBg4lSuSXR2NEc= ARC-Authentication-Results: i=2; imf04.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2023-11-20 header.b="cW/vMeTt"; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b=jmCfAtEo; dmarc=pass (policy=reject) header.from=oracle.com; arc=pass ("microsoft.com:s=arcselector10001:i=1"); spf=pass (imf04.hostedemail.com: domain of sidhartha.kumar@oracle.com designates 205.220.165.32 as permitted sender) smtp.mailfrom=sidhartha.kumar@oracle.com ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1744906952; 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:in-reply-to:references:references:dkim-signature; bh=/+9M5UyywJwGaPKy2LjWqztbQzrPi/dvQLTaoL0t/Fc=; b=XDjE8WXwQPodl5XdyfMOh8on7UBcKqrdsvOTYmM9JDqbvCPO1zpfFT37VXbkJt2UrfdCZM YdCCt+zPur3BKFr++1MMPWh/yR5q+vh1gkAwDivO5p4mLC7L6XDnZssTiBJH3IdRp4PZD7 oOn7zijKZ6TFkK5QqB0YI6o3Ihcn2S4= Received: from pps.filterd (m0333521.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 53HGIqUm016845; Thu, 17 Apr 2025 16:22:03 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=cc :content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s= corp-2023-11-20; bh=/+9M5UyywJwGaPKy2LjWqztbQzrPi/dvQLTaoL0t/Fc=; b= cW/vMeTtFSK8JZZTIJs13LgbrMWITMFzRJroBsgR7nGQgAJFEhesw24ZVdqmDliC lpH7FZ2kwrDJHKZ2ywWtnP1etF1LSNTQ7GeeRGlkWh5wV3Mz/JOdJ1Zbrp+ZTY+x 4yWW99KM3GzroWlU4ItPzzPMc+r5yU+8cf1DjWXPGehgEH4ARyz7Xt/gUP7V0ZS+ NGpHSreNK8bSGwvfid3kVRtdrmsPHYI+Sd8dxR2Vb79LFc8ubbMTPE+h1aErl5nq d7CR0KQpy84CdToD5M8hH3Oo39LwbW8+DkTpDG0ciD3kV3kwoQXwxqnu96mMOFkV ia9DhBIdn8oiCHKFa9WWiA== Received: from iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta01.appoci.oracle.com [130.35.100.223]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 4619446n5n-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 17 Apr 2025 16:22:03 +0000 (GMT) Received: from pps.filterd (iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (8.18.1.2/8.18.1.2) with ESMTP id 53HFRXrM008532; Thu, 17 Apr 2025 16:22:01 GMT Received: from nam10-mw2-obe.outbound.protection.outlook.com (mail-mw2nam10lp2048.outbound.protection.outlook.com [104.47.55.48]) by iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 460d2tgkvp-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 17 Apr 2025 16:22:01 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=qepFKY1kjvIg/T6VBJinMbGO88iJEOYp49SvQr2Qpgtr+K4mleaKBFUiYAZ9n9dKvEpMPbUIBSoKcG4To/5QRj7kTWxZRUpsNvOzNtnhfgfd24P5rHswyE+UMuN7RXRYQtG67bkvWlH11Bv+TnNJxfPlmiBJW3XWIaqAMfuKAq0tqPiJ+fnKnQ4t/1xamt0x8g+i2Kf057rTcpN6oJbj5sHQQRy6sGQVMZO5te/oF2+lbdDg405123UCq3/e7AzkX6xiPc/FTNk1kCyBcOdT1Rs5+ErCbklrEJk+7ydULlGbbO2IQxqaddRhWnNJ4POSjs132H7jxxdzhM6D2bpoqA== 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=/+9M5UyywJwGaPKy2LjWqztbQzrPi/dvQLTaoL0t/Fc=; b=ewV8/A8LmyfY7+v02AJTFWug8f8HR//Tbz9J25VEbUB1tTvlCIq/pLlQJzeKefQNbv3p2H0oxG9pk3sj2MtYRHVlMXgJp9xdA5KjFiZXJEuTDL+wLtPPrMMDLOxcFsicKgLKDT6VtvF5f75wBVbc/oDh1sV188633Owdapood004z1YSH3lLCOa35cXYuYKr7/tuvYAS0F+UmPk3gHQAPO35LQ3VrQMY22/mSr6t3XV+mLqS7pastzeHps31ZdXCAoMb92WHS1rClz01do77efznettrrn6SV5QiNb0sKYMydjN7k57okAHkkIX35lBgOzxG+xaXmEp5OLXKwpt9sA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=/+9M5UyywJwGaPKy2LjWqztbQzrPi/dvQLTaoL0t/Fc=; b=jmCfAtEo0F8d4UYL5SMs5YIwAKaI1SEC9O2XMqR08Pbm3ARHFzXiKjOp9wBW70IYmQ+O/++jegrYf3/f5vkt87W87LEGGC73dGY2PgAIZKqshqeWDEyuZiaNLIQd5NkX7LFlf2ISlQ6ofrjj72z1Ai0tTcVME8TGkzdCu9TWrIw= Received: from CH0PR10MB5113.namprd10.prod.outlook.com (2603:10b6:610:c9::8) by IA1PR10MB7309.namprd10.prod.outlook.com (2603:10b6:208:3fe::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8655.22; Thu, 17 Apr 2025 16:21:57 +0000 Received: from CH0PR10MB5113.namprd10.prod.outlook.com ([fe80::eab6:6dcc:f05f:5cb2]) by CH0PR10MB5113.namprd10.prod.outlook.com ([fe80::eab6:6dcc:f05f:5cb2%5]) with mapi id 15.20.8655.021; Thu, 17 Apr 2025 16:21:57 +0000 Message-ID: Date: Thu, 17 Apr 2025 12:21:55 -0400 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH 3/3] mm/hugetlb: Refactor __unmap_hugepage_range() to take folio instead of page To: nifan.cxl@gmail.com, muchun.song@linux.dev, willy@infradead.org Cc: mcgrof@kernel.org, a.manzanares@samsung.com, dave@stgolabs.net, akpm@linux-foundation.org, david@redhat.com, linux-mm@kvack.org, linux-kernel@vger.kernel.org, Fan Ni References: <20250417155530.124073-1-nifan.cxl@gmail.com> <20250417155530.124073-3-nifan.cxl@gmail.com> Content-Language: en-US From: Sidhartha Kumar In-Reply-To: <20250417155530.124073-3-nifan.cxl@gmail.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-ClientProxiedBy: BN8PR04CA0066.namprd04.prod.outlook.com (2603:10b6:408:d4::40) To CH0PR10MB5113.namprd10.prod.outlook.com (2603:10b6:610:c9::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CH0PR10MB5113:EE_|IA1PR10MB7309:EE_ X-MS-Office365-Filtering-Correlation-Id: 32ca53dc-2ee3-4238-97d1-08dd7dcbf98d X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|7416014|376014|1800799024|7053199007; X-Microsoft-Antispam-Message-Info: =?utf-8?B?SFdiTCtsNVZZZFR6VjFPMm12NEJMak9MVzBIMXZ1NmR6K2Y1NzlXVHpnanc2?= =?utf-8?B?ZXlhcHBiWEVQK3FWL2o0bHg0RkVveHY1dEZJN1d6dWpHMzYySEdZWGIxaTI3?= =?utf-8?B?Y3pmNkZMVTYralJ4dEpQQ29NRTE3a2IxTjZMZXJ2WWh4MGgxZkw0NytMMDBn?= =?utf-8?B?SVBRT2h5alhnZVRUN2JsaitETzRIemNYUHM4UnpMbmlzYWxRUG5icFp5OTAx?= =?utf-8?B?WjdHSkUxRXNMNnYzMjNDYmlJMmJJcDM5Rk1WTWdHQUQwZXRmcFZjdlMwUnF6?= =?utf-8?B?c0Z1Z3M0TThxS3JiKzcyVXNTNHovOE5TbDBFeHVDaUw0U3UzUDE3ODByK0lk?= =?utf-8?B?U3MxeStheWI5NUlBRlg4aTdCUXZRUXI5RitvMEEzbEZtbitkS0kwWWtQc2RN?= =?utf-8?B?dElwRUtzWEhicFZWVFh2RjN0Y2hML0RxQU5MVERFaGhvaUFKYzVhMVlSY2Np?= =?utf-8?B?c2JjY0lMN2c5dTRBQnB0bDlZdUJSQ2h2Y2hYZE55Qld1Tmg5TjlzSmQ5eFNO?= =?utf-8?B?dndJdWk2UEk1S0pDSWtjQzhqa2FzK2I2aDQzaDd4S2pGcVJyME5ZSUtDcjEx?= =?utf-8?B?WGF4VnppR2xrNER4dHFJVDZ1dGh3YnVhYXRqL2tDcCtBMmtZL3k5OVVPQS9C?= =?utf-8?B?NWNpRy9YVjE2ZGlJTjM2RlBOTWNEcGR3N0pXVjVobzFEWWFRaG9QaE1tZmw2?= =?utf-8?B?NHlrQnFFbXZZUFpObXlkdlY2czRqSDdlSk1EMWhiZm5GSTZUMnRUaEdjY1Vj?= =?utf-8?B?UVdBc1VTeGFPTGw0RGxPQ0VDd3FhNEYzR1ZRS0ZIUWZyNG9IQTFHa0RvdmJn?= =?utf-8?B?Y2tnK1dyN1F3OUIxenQwZVcxQ0ZaMU1hQkkxSHJEL294MmVVeWpQWUdESEsy?= =?utf-8?B?MTJDZTRHNVl1Zk5NbTJFRUNVNm1iY2FpN3JXMEo2YStSZlh4LzF3ODRwQ2gw?= =?utf-8?B?QnhQbEp6a3VyZkFiTlNCaVlQdUZUUzkyZ0dEclFFTk5MaXlKOTE2cm1UVVlV?= =?utf-8?B?K1JSWmJBMGZYVzVndm1aWHFwaEI5RUFUbnI5bnRDaS9VU29VODhyL2FCaVJE?= =?utf-8?B?WVZNYXBoMWhORFBvWmxJK1VOa2l3cGJWN1lKT3ljbVJqWFNLV284SlVqMXI2?= =?utf-8?B?OG5JTk5NNDB2SmpuWDl5K0wzUFMycVVvRGJaeGVJZnBTamFFZHJOMWVhMm03?= =?utf-8?B?WnZXVSt5bE9GVElZNkdRU3g1ZU5UdzZld3BtcGg0SUtCMXAvbUNpTStaOUl0?= =?utf-8?B?VTZtTmNzRVVXNzZjejV5M29sMUpHMUd1c1U1blBoN1JjY1M4SDNRNGl3eEZj?= =?utf-8?B?QnF1NVJOMkx5Z2ppY1V2YXJackdHM0doaS9OdHZqY3ZyU2wzOVV5VlNNTDc5?= =?utf-8?B?SGpZTHQ3K3FLK1VxVHpCdHU1aXgzUngzZW56ZUQ3R28vRXFsN1BXS2ZGVkpy?= =?utf-8?B?Ly84cDFNcnZyb3hjcCtEV2pDcTBnY2EvbVZoMG5VTTlPblF0VENiMC8yMDZs?= =?utf-8?B?b3FzaSs4QmpMQzZ6eVQydkgwZ1FTcFBDOFhKbXFhMGl4Yy96dWMwNDBTZDZT?= =?utf-8?B?dEg2c1pGcTFOZVJKNUdINWNWMHZaOEg1Yk5IMzhNckFlR1hyY0hFU3NGbUUw?= =?utf-8?B?S0NKcVJ1Qzl5OFBnTFE3cXp4WkV0MCtOdGtQN3VaYk56Sit6T2REcTFyR3JM?= =?utf-8?B?Z1NDVmF2NXFRdUVpL2dTdEczOFB3UjI3ZTBmZ28wRDFtSEdWelNSbkcwNmhp?= =?utf-8?B?QXA1RVZuUm45ejgwWTlJQW9ScGN5RFpaQzd0MFpxbjJmdHRiVm1aQ2c5THU5?= =?utf-8?B?VGhFRlZlazRlSHdUakI2WkpCcHlON0ZqZzh5TVZCNHd5aTRrR09FcVdqb1ZR?= =?utf-8?B?dWFxc2R5b01LL0s5emhVSkhOWkNSakd1VkJJQXE2SGcvNmc9PQ==?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CH0PR10MB5113.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(366016)(7416014)(376014)(1800799024)(7053199007);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?UDdzU05zR2xSd3JJWm9vNUhjU3V3NnJhS05malFvSUlIQ2FoTlJ6T1pUekwy?= =?utf-8?B?aGwwaXBxNXJRWDgxQTI2WjBJUWFpMGtXRmhzdWlZRzlxbmhiMHJJazBGODNN?= =?utf-8?B?Z0VFUmxudjVlMzMzSE5Pd2pDRmNoWUQzblNhdjhWc1cvQ3NkKzI4OElaejFO?= =?utf-8?B?akx6cjRUQVBUTWNZZndCR3p4ZFEyUXFTRUdUM3NMYk9kL0czcUNneGFIRCsv?= =?utf-8?B?TlNEejJOdkE0M0FBczFxY3FId1BrNmhDbWtWUG01Zm1hOTI1S1QzbFRMQ1lq?= =?utf-8?B?Z0szdFNnTFpibFNEL2pLT212V0ZxMG9KZTNYVU8xMzZXVEZwOWQxTVcxd2Qr?= =?utf-8?B?cWE2TjN1alRGR0tDODI0ZHczSEUrV0hEQlJHM2QyK041MlJZQy9oeDh4YmJX?= =?utf-8?B?SmhiMjY1MFJPSG9wa1dZM3JRK3lnVHBsSnFQNVZLUWc4R1I3WloxL0JVUHRa?= =?utf-8?B?azUxbkptNllZeExOa3RMSmR2SW5Ib3RNelBwcURMb3dWT1laV2ZlbjZVUmNw?= =?utf-8?B?Q3F2M21SSVM4OUlXejNtdjV1bTJGVGZCRC9uaVNjMWp6WmVxaHh3YmVEdDNM?= =?utf-8?B?cE1id29QZ05NZUJtMFlFb0g4b0ZsNmlWa1RXa1dEL2lnM256VXJHRml1WWhw?= =?utf-8?B?dzlud3g1ZnpKemErNVFJczJFVXJReVQxMEZJa3ZvUXNYdGczNnhSSXZxMjlN?= =?utf-8?B?N0thcURadHllUm5ZZkxFaHZVaW5wRUtJZUtJRlk0R1BZczVNWlB1YWJyeld1?= =?utf-8?B?WWdvdm9kSTVUL2RRdHJieTQ0QlcxZWEzRkxCV0lFQkZJZXNBc0RFak9vZlpu?= =?utf-8?B?Nmt0UGxvMlBwUWF6bUlPNllFcnV0VXBVNXNjdEFxYkFBeWFZSXJldjMxOXB5?= =?utf-8?B?VUFuSkU5VjR2TzRuM0RnVmhZQ3A0a0lTSmNNdU0vR3lpOVErRnZHSmpPNFVh?= =?utf-8?B?dVUrQ3pGaVZub1ZDNVVtNEJzbkQyU3MyWjBEMjBPeEpFcHRRdkxrKzNsMVdW?= =?utf-8?B?b1E4b2VFMFQzZFczbUYxTmtOVVFhZDhpQ1AzTzVqU0cwMjdURmhHeDB1VlRL?= =?utf-8?B?RUl5RzhpRkFsWkVBREdiWU9RMFhmN0VXOWZtZjdqQkpDUzBxWkJwWEtIMi91?= =?utf-8?B?dmVueCtkeHVpUFQ2aXR0bDRZZGIyOHRHdVdPdk1DU3pWc0xaWWkzektDcC80?= =?utf-8?B?OS9tbldMbkpvbXl4YXJwa0s1NWlYM0R3dWJUTk5zYklzRHI5MmYyVy9XQ1BP?= =?utf-8?B?aGF2K3IzQ3ROaU5aL21GUk5YSSsraWZkSCs3WjZkcnJ1SUtDbGFHMTlieVVJ?= =?utf-8?B?dXdDcll0c2djaHl4R2pmaXVvSWM5NkhnZ3RQNlV0T3h1TmpPOXhOT2pvWk1T?= =?utf-8?B?QXBhSElQZkpnK1pGd2p3aXJxeVNTWUlVUjRNU3crZWViMTNya200ZnpsL3Jk?= =?utf-8?B?UEVTZi9tV2RvRGtPeXF5SitGdU1sUitOR2lLZEZVRnkrZUtrNVZxSGJMK2No?= =?utf-8?B?Lzd1WVROZHl6Mkt4ZkRzYlRpNkRXQ2txZGZobmpvYlpCaTU5WUJZSVl6M1pq?= =?utf-8?B?RkpmSnVRQk1tTGE3TXVWOEhjekFxUXFhUytCd1RFMzNpbzVyQmkzUDhzZXZH?= =?utf-8?B?N1drVGRlY3RseGVFb0MxZSsxRXRBTjExbW9KQzY4cVRYbzFzZHpZc0ZXYUtO?= =?utf-8?B?OHRKZTVIOVJMSHVjWkV3UzdvYUZiQVBRTm5KSXNqTlM4ZkRWSmdzQS9waE9j?= =?utf-8?B?cit1dkMrUHFRUzF5eU00REl0NElOWVpyd3dKSU9nNDNENkFaNjlOMVVwbjBx?= =?utf-8?B?TU1YdXppYnFBbTBsUFA1R1BQRnJsMGl1d1BZUHE3c2h4KzdObXV5cnF6djAz?= =?utf-8?B?VG8zTklSbTlMS2RYUm9ORTNhQ0lmcnpzNFdQQXBaQ0FuR0c4ODZUWnVmMm5L?= =?utf-8?B?RHdsV25mWGNPMEFpdm5hek4ybW1UbWc4TlgyZGdTRjdLTTkvQi8yQjJtb3RL?= =?utf-8?B?eFJHYUY0ZkdpelNqb3NBT0xZK01YUDV2MFd1QWNscTBXSmQ5bG9yUkhNNTNZ?= =?utf-8?B?QTJnMUN4QmJLL3RONFY1NHdwYnd6M1ZpUDJBbHpSeUdSMGwzdSs0SGhBR1lE?= =?utf-8?B?MVpNdkI1R1FmcUpMaG5IaUlQTVhqOEg3QnlFdEhGS3M4dGM0Q0VTeXNYT2Zv?= =?utf-8?B?cXc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: dIwPNXvbqPbfDVL2gsnDqRQuzCBF5iKZzuodOeZHTWedWP5RVvJgeMfskkkwlqE6VbhcsbWGDGdvxgzxUiG5MYmudcIO3e5O6FoURBC0DoAHDxL/an4r0cCWU/IymvBFzaRRSkbFeSQIlmoiD0eQLH+pnh4t9Q1CUQzDw5px9cIITUOK4PjVmo5P3xr3f5nu4lPU28tkcC2YtjcToOintb7/HHaul10nkbHA9aBVG5UOrGWO+NX1n+2Km3OLIbeIyCWjYoURyxoYWRS7Qiplz5+tSLD0H9xsF/G2KeiNXpangrdemwp+9VILrvD3+lSnPA2QfqnW1TNDqv/t0w7zSd9qV8+6Y1H8wE84ycfftqwg0l+OgvZ1UEp0bMOHycDN1zAwZnJH0ibD71W9S1emiiN7xUOlpSgtEeCJmFvfo2Jzb33MgfewBhYFdhdRdiSqWqox51mmUA7eaJ/Wcr5A61aijJ5PAAyLmcHUi62Yut8KubFzLsbQDFn0Tom10S1xZBIpM/Q97da1oH3D5/anIkdQRQ4V4gQS+WTv9JChjsQQAhhCv6918vtEN5uCesILJy6U7yG08+f8PiihkVLiZbCwQGYisNDICDkKrPYZ/zQ= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 32ca53dc-2ee3-4238-97d1-08dd7dcbf98d X-MS-Exchange-CrossTenant-AuthSource: CH0PR10MB5113.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Apr 2025 16:21:57.6726 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: M2IUAfjUdbjD+cPF0NTRFLffRB5lnFnnbgOsG/RhXZfSEiAHQt5ijtVKS0rgvTeAE1aYuAxcwV/SOKac7+X9R5H5Hacs9Hsjai7hdz02yq0= X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA1PR10MB7309 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1095,Hydra:6.0.680,FMLib:17.12.68.34 definitions=2025-04-17_05,2025-04-17_01,2024-11-22_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 malwarescore=0 adultscore=0 phishscore=0 bulkscore=0 suspectscore=0 mlxscore=0 mlxlogscore=999 spamscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2502280000 definitions=main-2504170120 X-Proofpoint-GUID: RJFf0BQDMdEqtR5eQrDIyakwIV69DfJ2 X-Proofpoint-ORIG-GUID: RJFf0BQDMdEqtR5eQrDIyakwIV69DfJ2 X-Rspamd-Server: rspam03 X-Rspamd-Queue-Id: 8245640006 X-Stat-Signature: x1aifregy1nnxn7eyz6y9msio9hxbbx1 X-Rspam-User: X-HE-Tag: 1744906952-85372 X-HE-Meta: U2FsdGVkX18SABqqQiXwcGZvpSLnCjxRXwz4Hd5Q/B5hMNbzdYHTcxh/5HZsnpgzuhWguZ9zrkOpgAVBPWNZsgbsdFAzitUckPX1ep1ico1vbaYiVQvJslWPX96nBBRLZHPE+q24xFTdSZALbNC6N7EngFMnp0iQjMMIOE6Vnq9Az35xNjkuFJ2shhDOcoMQi+8M/+CgYcl1rka1MSDKh42gZJiVyDW98Ct46sR4h5/g5QL5F95c4Z+ASQm5L4mikuxCs97OjvJRqXhbKT8qm3L3Ad9BGNn8g/Vu/YUihe5Rq+HePZNYaPo43hB9SRwE9nwW5NCqiLlg0Zi3ZsSA1HsrGw6sQJtow92iF7TSZ6+36L+p5vmNAhpHtc2w1lNRbA6+iqDROnCR7fOWmbvtHSo2+znYI+YwiYsmuzq1Vr07Dpq3bEp5tDS0Dkis3elXUhjGgzdjxantpF+d7E4ZOZpXBYZ25SHyb7yATisWhqbjiNXnuzGK/Moz9inM2nJmgPFkLk6VlRyv8MxcMdvF/b+P97in8nJScxouTA8zPJP8cCfiLU+HGEOJxi3AV6551kTDR/kIHrKQsGWY6mi9lfS8kPqVN9XhHD0dIx+o4XK0s07KMBzldaUeIWqQOWauaPzTVKO1kDlcn4E0CadkkZzHxtvfcZ5CpE2YZvGPBYLtMmNCM76E5SjvRRj7i16V4XVrQaPWFMHw4W1jYJ9AxVI9ntSbiV5v69PL2stsTLqhhZq2mZYqrgOxenABJclIy2FnyDwXhYcAS38oSJw1KzxGoJVRIUpsGsiQVW27n6bEOjVURbsgucvVjsZpwyDVaY/Mebo3OQ7zEhvhT6fb1Ae29QaRXKsiMIvZjcFK/rignZtXI9TlrkwmBpB3dYqz+YQuqsZyhs13M2ReCjJzE932rtxb29Voatw6ugiv7KONKbAGT5WRed72870AYax+SAj0Z+M8Y7BlEebRa/5 8xwWzFDr lu9sEI1sKtrZsRFwFLfpxnf75IhrZaOVh7ApZ9WoAV1Praink1fIqvyODvaH9dmvOIDoqyWpsBB918ndIfVX9Ri/3l715174Ykucme7WBLQuoAEzrL+8CVeRR48vdCPPRmeWSG5teWtKxyIgtMVn+FsH/5k1L8HPVA11Qwa+XxGlEdRNjXkBELy/CZqPUOsYe6roRTnnlV6JcToi7Wznfl8qPCyx4vsOp/TYe4bLiQC3HiMtuQev88xl0SVlojIpavf+WN3hsV4VYOkeZ8AKMUFn2oHYh4pic9SGTh1ZapOpXnpZhZB9eWQClpI+3FhqChDhgicKCMTVKo0SaP9sJTlXu+KfPggx0kenVRyv0fVzcjAQ4Q5nNbRBjpeGpPE0T52ECz4Zy7W7XiLMsfodYdvFNEOsir9g9bPq8FeJsyCTENAyx3EJLrMqcR7wdxc2jhMF1cov2Qa9vdfUpWPBSkeJSDUiDa9rdYd++/zcX97ZPPV1w/FcmSxxxpRXOOg+CYTaXpuD1cw2eWUDqd7Z0vvmbMdhejs67H1M5CRUhuonyEyryOUHtbBqkHaooYSAITd48CWSlbH1ldHRlMZuD7QbmoAt78Am0soBrGG8Vo+2H+cnTEaDblTQJo8uRTitQEV4+obBpV4UsSyN/zpoR5NHDOU3zvooAdoVpvealV/VqtmHAfKrCgI5xA3PFi6veLVQ/0WtgnhsOMWlQc/fdbCtE83GMa1mL3XX8fpR8ZdWbf8Td2j94J7ctG1GJdw/Rxf7ZQiSjBhtLq4wmLreZKlG3OR7vYhEENWe6MdHaqflGJT/H8zRLqqKOoTs6AklOKNRiN7/IVVfK4s8= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: On 4/17/25 11:43 AM, nifan.cxl@gmail.com wrote: > From: Fan Ni > > The function __unmap_hugepage_range() has two kinds of users: > 1) unmap_hugepage_range(), which passes in the head page of a folio. > Since unmap_hugepage_range() already takes folio and there are no other > uses of the folio struct in the function, it is natural for > __unmap_hugepage_range() to take folio also. > 2) All other uses, which pass in NULL pointer. > > In both cases, we can pass in folio. Refactor __unmap_hugepage_range() to > take folio. > > Signed-off-by: Fan Ni > --- > > Question: If the change in the patch makes sense, should we try to convert all > "page" uses in __unmap_hugepage_range() to folio? > For this to be correct, we have to ensure that the pte in: page = pte_page(pte); only refers to the pte of a head page. pte comes from: pte = huge_ptep_get(mm, address, ptep); and in the for loop above: for (; address < end; address += sz) address is incremented by the huge page size so I think address here only points to head pages of hugetlb folios and it would make sense to convert page to folio here. > --- > include/linux/hugetlb.h | 2 +- > mm/hugetlb.c | 10 +++++----- > 2 files changed, 6 insertions(+), 6 deletions(-) > > diff --git a/include/linux/hugetlb.h b/include/linux/hugetlb.h > index b7699f35c87f..d6c503dd2f7d 100644 > --- a/include/linux/hugetlb.h > +++ b/include/linux/hugetlb.h > @@ -133,7 +133,7 @@ void unmap_hugepage_range(struct vm_area_struct *, > void __unmap_hugepage_range(struct mmu_gather *tlb, > struct vm_area_struct *vma, > unsigned long start, unsigned long end, > - struct page *ref_page, zap_flags_t zap_flags); > + struct folio *ref_folio, zap_flags_t zap_flags); > void hugetlb_report_meminfo(struct seq_file *); > int hugetlb_report_node_meminfo(char *buf, int len, int nid); > void hugetlb_show_meminfo_node(int nid); > diff --git a/mm/hugetlb.c b/mm/hugetlb.c > index 3181dbe0c4bb..7d280ab23784 100644 > --- a/mm/hugetlb.c > +++ b/mm/hugetlb.c > @@ -5833,7 +5833,7 @@ int move_hugetlb_page_tables(struct vm_area_struct *vma, > > void __unmap_hugepage_range(struct mmu_gather *tlb, struct vm_area_struct *vma, > unsigned long start, unsigned long end, > - struct page *ref_page, zap_flags_t zap_flags) > + struct folio *ref_folio, zap_flags_t zap_flags) > { > struct mm_struct *mm = vma->vm_mm; > unsigned long address; > @@ -5910,8 +5910,8 @@ void __unmap_hugepage_range(struct mmu_gather *tlb, struct vm_area_struct *vma, > * page is being unmapped, not a range. Ensure the page we > * are about to unmap is the actual page of interest. > */ > - if (ref_page) { > - if (page != ref_page) { > + if (ref_folio) { > + if (page != folio_page(ref_folio, 0)) { > spin_unlock(ptl); > continue; > } > @@ -5977,7 +5977,7 @@ void __unmap_hugepage_range(struct mmu_gather *tlb, struct vm_area_struct *vma, > /* > * Bail out after unmapping reference page if supplied > */ > - if (ref_page) > + if (ref_folio) > break; > } > tlb_end_vma(tlb, vma); > @@ -6052,7 +6052,7 @@ void unmap_hugepage_range(struct vm_area_struct *vma, unsigned long start, > tlb_gather_mmu(&tlb, vma->vm_mm); > > __unmap_hugepage_range(&tlb, vma, start, end, > - folio_page(ref_folio, 0), zap_flags); > + ref_folio, zap_flags); > > mmu_notifier_invalidate_range_end(&range); > tlb_finish_mmu(&tlb); Reviewed-by: Sidhartha Kumar