From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) (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 53252A55 for ; Tue, 21 Jan 2025 05:01:20 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=205.220.177.32 ARC-Seal:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1737435683; cv=fail; b=b62YGBzJDbWK2/F9soqppvGPpUKAHZEj8Zo5t9dlLw+7Ysosz7zJm7nByhiEtPhstOG/JaYZoOcbT5khmUH0ZREyCctK+wViGuFxca3vH1GBp6nLqgWMr6a+dIaEKveVPckl2ltsZZE9Ezue7P8wWjPAYSHqvf1pXEGdXKac55c= ARC-Message-Signature:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1737435683; c=relaxed/simple; bh=waqcHGgsu/d7oMhjPeGj49qwcXmgVREugHn/dYKQF6Y=; h=Message-ID:Date:Subject:To:Cc:References:From:In-Reply-To: Content-Type:MIME-Version; b=mEXC1GPFhzfmMbxnq+/oKO024zaUhZmmVZxkA/nRdG8FVBH8oiM4N1AIuKx0+RS8Re/54WX8uK+CMY/A4/wOqcasakJAX/gpyLCR78GiaERhI9gf0B/BgEYcv/N4ibNSL6juISPffwaL9jnujNSSJOLkq7IAq9HFwDDUGzSBmos= ARC-Authentication-Results:i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oracle.com; spf=pass smtp.mailfrom=oracle.com; dkim=pass (2048-bit key) header.d=oracle.com header.i=@oracle.com header.b=e393ATeS; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b=ncfwyHcr; arc=fail smtp.client-ip=205.220.177.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oracle.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oracle.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=oracle.com header.i=@oracle.com header.b="e393ATeS"; dkim=pass (1024-bit key) header.d=oracle.onmicrosoft.com header.i=@oracle.onmicrosoft.com header.b="ncfwyHcr" Received: from pps.filterd (m0246632.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 50KGN3KV011922; Tue, 21 Jan 2025 05:01:01 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=UyNzm4FcC8C98D+2Jp/VkKQMTMldbIPBtSjc0NvvkaQ=; b= e393ATeST42bWU5tv30PDmGCyvtBtdSh5c+rD37ve6oKtpfdD/tUzqUokEyqMnKo z7VZbeubOiItLY2Jousw/ZjjvEqhI8pX317D2b+bfb1aI2GwF23Ag+pbluLtsvwx DW0MAnITNL2z8GoFiHMT1lVSshSS8+oRV/8o49VD7ZLZ4SWM548qR96YZST+Lsnl fJ5rAsvL/s7WCcEIKOf322VBV34B6Vks2UpRE/QAp5rzVbBRDrmt4CN2aRQwur4h 3N2zaFjl0K1jAFStDLs3jbuVaGOzh65LeiH1gZw/jYkppryhH2G3kaDQTngAnfSy KRZrLZJVFRPZ9hKx11i1Cg== Received: from phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta03.appoci.oracle.com [138.1.37.129]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 4485qkvkrc-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 21 Jan 2025 05:01:01 +0000 (GMT) Received: from pps.filterd (phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (8.18.1.2/8.18.1.2) with ESMTP id 50L3otro030587; Tue, 21 Jan 2025 05:01:00 GMT Received: from nam12-bn8-obe.outbound.protection.outlook.com (mail-bn8nam12lp2174.outbound.protection.outlook.com [104.47.55.174]) by phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 4491920rhs-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 21 Jan 2025 05:01:00 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=S18qyUSLpwtzRxYFLkTruhpfpLc99E7eQAa0+ZrI7bXLUIZmxcFpk6WmIjkb2CXIhnW1d0K/NupNRet5B3t+daR73bi+0wCTppUdss+R1oCfwxtDGw0ckq7/GBNkKFma6spAICVYA120cIzUOyhpI0X0AkAiXm50fh2s2QCiAISASLLjwGzjsnALA+3e9Isf+oPkmNqAVK/I0jWOJpjNGZIZc2gZDGui66EySgJ0y8/HelP+sc9xqDTeh6pqYP7sHvcOQc6BTdGzLmgpoaUgeC8MJfZ3e26Matmf2RtFrIQ8kXXf1rVF0vusDgjvaRG8ZoyOSi6GQPuzN6mec0yRMw== 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=UyNzm4FcC8C98D+2Jp/VkKQMTMldbIPBtSjc0NvvkaQ=; b=AJeq5ALby5X+0RukVIczbCx2qdjHkz5rsH/3NrFkfxTnJ52I0A40ivNtBAXYtTx95ZQ4XY3V3anjQB3Z9QsaG07aPchcg+Q/cJ423IsQ3+BqgKTqq0DgJAcMaronBYIvka8uprzfJ1PNvb/WXtepezyf7SDxOtClDKOSOofAeUij8zkfzt5ebFE6Mhh0exgTwtT6vsMqXHeqJYcTsEbvtRYgpIpYuaC2whTR3zOf6RjCVh0WyiwEpAkoPBAu8jS/VEBRWo2lsBeMy/IluXc/5GBlTz/TArGUIwaOIiu7m0hpPfeOmhngRopL/LC7/3Ytv5AV+wlCsliYLq0lDDUnWw== 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=UyNzm4FcC8C98D+2Jp/VkKQMTMldbIPBtSjc0NvvkaQ=; b=ncfwyHcr/K5nDe6s7HgFmOU2YlRRwETcJQojEPZlMVXHQbL2qX5INfGaNK7e8DehAbHpLeBsN1DoTrJuAeWtp6K3h39kMGixeHen3wZTQKRDZqzLszMjF7TXeTCmhbRU4b217gVvfoT1Oq2X5oxEuqAr0qiIFvn/gMYmYFNmHxs= Received: from SA2PR10MB4780.namprd10.prod.outlook.com (2603:10b6:806:118::5) by DM6PR10MB4345.namprd10.prod.outlook.com (2603:10b6:5:21a::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8356.20; Tue, 21 Jan 2025 05:00:58 +0000 Received: from SA2PR10MB4780.namprd10.prod.outlook.com ([fe80::b66:5132:4bd6:3acb]) by SA2PR10MB4780.namprd10.prod.outlook.com ([fe80::b66:5132:4bd6:3acb%7]) with mapi id 15.20.8356.020; Tue, 21 Jan 2025 05:00:57 +0000 Message-ID: <673b0353-ad8c-471b-8670-25d9f06d232b@oracle.com> Date: Mon, 20 Jan 2025 21:00:54 -0800 User-Agent: Mozilla Thunderbird Subject: Re: [RFC PATCH v1 0/2] How HugeTLB handle HWPoison page at truncation To: Jiaqi Yan , David Hildenbrand Cc: nao.horiguchi@gmail.com, linmiaohe@huawei.com, sidhartha.kumar@oracle.com, muchun.song@linux.dev, akpm@linux-foundation.org, osalvador@suse.de, rientjes@google.com, jthoughton@google.com, linux-mm@kvack.org, linux-kernel@vger.kernel.org References: <20250119180608.2132296-1-jiaqiyan@google.com> <6f97f3b6-3e7b-4ff8-8d67-ef972791cccd@redhat.com> Content-Language: en-US From: jane.chu@oracle.com In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-ClientProxiedBy: SJ0PR03CA0047.namprd03.prod.outlook.com (2603:10b6:a03:33e::22) To SA2PR10MB4780.namprd10.prod.outlook.com (2603:10b6:806:118::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: SA2PR10MB4780:EE_|DM6PR10MB4345:EE_ X-MS-Office365-Filtering-Correlation-Id: ef798c69-555c-4883-a5a7-08dd39d89790 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: =?utf-8?B?cTFZdXBYUVdwcGQweTlkR3FFdlZMVFpLL0lpczVqT0gyRVJoNXJtWWF3RzA3?= =?utf-8?B?WG9hclNnZHRSK2RLRjkxMm9RMTZvbVJUc3AxeDB6VGV5ZWRFdGxqSFZES1lr?= =?utf-8?B?NDJPUDg5U0V0cS9nRmYzNWp1MGdZS2FESlBRTjk0Q2QraldqOWxUdTVIa0dh?= =?utf-8?B?aHIzVjdmMDB3QzhhNXRxSU9sT1Nxb2xkMFlSZEgrd2lTOTlzUkdDdmtzUEx2?= =?utf-8?B?VjVHRWo0cEFoOVJkWm5GSFBHakR1NUgrS3graXRtVlZnTm9NcG9UNFBQYXIv?= =?utf-8?B?NjdmSlBOYkJOTytjZStuZjVUWGZJZVlWLzYrVE55clBFVlNEVGtxbDhSOTBJ?= =?utf-8?B?RkdMREZ0UzhCN2c2TkNOeVVzZ1A2cWhhQy9SQ3VNa0lMWEtOd0pTNzl4UkF1?= =?utf-8?B?OVpDSm9QYnBrQ0haMDhoMzUyRGhvdUUvdFVGL1laYWhkWXVSNE1jMTMzM3Iw?= =?utf-8?B?RDNjRitQNGt0elNUVXM0eDBLTkUxSU1vdGJOekI0RGlGZWZ4R3ZIUjl2eU9t?= =?utf-8?B?VmRLL2ZpZFZaSkxCeE5PSFJ5UFVQMUFyVGZFdmkzSUxVV2xrOTFNL2FveFlK?= =?utf-8?B?ZEdZM0JxTElFc2FramhuV0xqN284bFU5UzNQMi9CNFl6elBZWW4rT0tpQVJF?= =?utf-8?B?WnluYTN5d1Z5UXpZOFZ6OXpNRk40ZEIwYVNjb1Vpbld0Tm51dkFDZzNIMjZo?= =?utf-8?B?VHJaKzlSTmVZdE5hYjRLODhORkFjWHAwQ1ZoVjZJRHJqTTNEMkM0dDNJdDE4?= =?utf-8?B?dCtWR3NZTTNhZDEvU0lMZ3lmdFFpdGtNYkxvWTZBWnpHR3lJT1FIMXBPVEFC?= =?utf-8?B?b1RYNS9sMFVxUUtRdi9tSSsvZko0S0dvYSs1VkY3amM4azc3dTlwNVN0d0hM?= =?utf-8?B?UzJVbWRFeWdXVmFTa2NncEUxNjhkMk9mbVVsWlA0bjBtMUJqaDZGV3ExTFEy?= =?utf-8?B?dzZRdC96RkNSMnAwdmUrZWJhK0hyN2RGYk1iMTR0TDE5YmEzL2p0aytnd1RE?= =?utf-8?B?R0lkbXZBdFBlOWFoRFNnd1lhd1ExVStDcUdzNExVUUFLaVlxTE1pMU43b0x1?= =?utf-8?B?cVlkU0Rwek1BNjBWMFFXRlNYYVdGUW9uNFNrQi9Sci9CUWplRFBOdTZua3Rm?= =?utf-8?B?ekdicitnblFuaEdKYXRSVDZKamZ0c2I3c2owdk45ejR1NkVTd3p0Q1ExL3NM?= =?utf-8?B?UlRDZGoxTG0yTkNiYzAxcnNxUVhKS1ByWlVqRHhlQzZCSnU4N3FvaDBGNG9Q?= =?utf-8?B?TDFEY1NKQ2J3QmxHTEVZY2lGTkZQVk9Lc1FKSWlBS3ZtcU9DNnhUek1nWkN6?= =?utf-8?B?Nk02aWxranNSUElmVUVGejdvMVFKSWJEQll0TTNnSDJOZWJrZjF1STZhZ2FO?= =?utf-8?B?NzY3bmVQOTZ2T3ZjVU0yUHlqWWNiWGVyTklxdXEvUU1zRVZvdjk4T1ZYNFov?= =?utf-8?B?MzU0Z0sxSFlpZ2FZTllpM2dWdHE5NkQ0WEtERnBET2VVTUNkTnpYTjEyeDg4?= =?utf-8?B?L3Z3VnZnZ3V6cWpPY0k2Q1NWa0xyWUJpbGFrVXd1TUxadFZzV1lvZm83OXZ6?= =?utf-8?B?QzZVc0pEc2hVa0ErZjNSOHhLS2xVaXdyd0tlajdSZzlQZUdudTVJamgvQlVq?= =?utf-8?B?UmExQVFIRjF3ZWxkdTVneFlQU2E3VWp5VHZyQWhUVi94TDVTWDd0ZE9oT2lE?= =?utf-8?B?NDFDYnFBUzBIVTArRmVnN05PNTlka0x6bVk0Y3VGL0E2ZE82K3BSZ1V2K0pU?= =?utf-8?B?ZTk5SEFoOThiWHAzaWhkaWxRaFhqczQzK2szWXdncmJsZFpXWFVEeFprYkhw?= =?utf-8?B?ckg5TDloU1ZNVmhMcGdjbmJNU3EwWUZFWjF3YllQaHJtR01BYzJHeTlmTkxk?= =?utf-8?Q?DFKEY8tOeHsCZ?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SA2PR10MB4780.namprd10.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: =?utf-8?B?KzJSSnM2U3lzMjZnVTJBdTdNK09ENXNCbFFYZFdmZUdDS2JnelFtV1BSN2NN?= =?utf-8?B?TFRpMmNRRURCd2ZoZWxxOGg3MDh3dGFrZzlBTERYTXhpQ0ZJSXVMNGx0eU11?= =?utf-8?B?ajduSC8xZFI0c1pDYnI3bkxnb0pOd0UzNStidlFYTFp5TkpXQmtOaW9qcE4v?= =?utf-8?B?MmxQR3l6Q0JIVTEvOWJwUDgyaVQzSTNTcFBxc0lLNDI0ODNUVFhHNEVyMzds?= =?utf-8?B?UWNUSVphMXpPQXk0M1h0SDJTKyt6SlhPNTdRNWxnYys0SlNCOU52ZXNtMEhn?= =?utf-8?B?bnlTTUhVc0ltZnBGSFdoRFc0M3d2M2N5T09QR2lnZGpTTkExd1RjUWdDdlNH?= =?utf-8?B?dmtsaWJ5ajdROVQwL1B5TmVneGZwS3dhYTF6RjJwSlpzU25lU0YzUXZ3dlZi?= =?utf-8?B?OUUvVlhHMVltNFhQQTg4KzBNN3Z3UDNVWE4yUDhPWFB4RmhXNUptQ3M1YXJt?= =?utf-8?B?cTh1YzFLRTE4eWxjblQyaEpMNjZPZFJZaFNETElTSUdSbnQrYWoxQjViMklk?= =?utf-8?B?OVNpd1ZPeGxOOCs0UmZOemJjZkNQY09QYnNDOW5OV21PUnRWWlVzdlhwcUZz?= =?utf-8?B?SGhxQ09ETitpTExua0pxV3N2TFZZYi9Fa1JoaVI0QitCL3FwMnFUdUtDRnhn?= =?utf-8?B?MHRpODRmaHQvMEo5NEgrU3BZTzFEMTZzMm1CL3paaUFac1kxcFczVDYvZjZ5?= =?utf-8?B?OE5RZWdCcTB5THdjYUx3b3hUMXZPRlo4cUJNdEZBWFdXdjQxSGF2WlVXVWN6?= =?utf-8?B?Q3A2VnRWT3drTUFsUU9jTEs5MTcwaDhuWE5aMHF5NDVLWkxyRlFaVmx6LzZY?= =?utf-8?B?dEZDdkFkL0NLNVpVRElWRWY5WWdXQkVQRzRzWU50SlNsWk9zSzI4bkJhQ2J2?= =?utf-8?B?bnJrdDVRVEJib21Ya0JKcEJGL2RwSWREb3dpTlBZR0p5a1JHd0hvMmR5N1Ru?= =?utf-8?B?ZTlqdnZOZzJoVzh2d3BidUhoK0dLcFloQWtwQUN6dUowSytsQllWQ1ZRSk94?= =?utf-8?B?RFJhbkNJSjBNcUdnZW5EMG41c3kyeW9TNENNZWlPcW10R2xaMXNyZDFuNDFF?= =?utf-8?B?K0lEekxvMjFHa2NsU245dmZUMDZidTlpTVEwRWFzTVNHRXdEQnU5NFZJVXB2?= =?utf-8?B?Mjg4OWpLNFcwRDRIWE9tb3Z5cmZUOStDaXhlS2RtMWJYamtnZUYraWh2N0lw?= =?utf-8?B?aTArbHgzcUdSZ0dQZjRzRk0wRVo3Y3RqYzN6dmxJVzV1clNVSVBiby9aRFJs?= =?utf-8?B?WlliTDRTdm03cTZYTUJPZW9rRGZVenZuaVdQS3RzcWRoK3N1UEkzZXJHMXhN?= =?utf-8?B?MXdubXcrVGN2Z1F6TERUaTdKT0loTDdLZXhRMmNsOTI4eTgwbjRQdm5YYkZ2?= =?utf-8?B?K3NtbEJocS9wMklOSWpEUys0RkZqSmxoRWVsb2prdi80K2VxN0NLZWlEblRp?= =?utf-8?B?NkozVm5qc1VwZlAyVnZ5aitkYWtYU3gyTkpOVHRyV285WGFQdkFSbWRjNGI4?= =?utf-8?B?VG4vNjVBZDF4K2NRZG5qdXBHVUoxMkxMNkJIUS8yWUI3TWQyQjJsWTRUWnRH?= =?utf-8?B?WlgyNnFuYVV5bUJKWVFkb0dWYi9FZjU2Mm5QSHFQcTBHQWlGVjhqaTlFWWJO?= =?utf-8?B?cURDZXNDUXNwdGJoaXlNMFU5bitBS1dHRmVYdnFseE52SjY4ZUVIL21QV3BR?= =?utf-8?B?blptNGZ4SFZMbVhPcmRjZlgxSmxGTWx6bjF3L2ozN3p0Qk1SYTlpYldzbW55?= =?utf-8?B?YlVXMzJRdnk1eFN2b3g1R01JdjRxUS9BQnlXSUVHM29aa0NacE1rZVk3TE1H?= =?utf-8?B?empRUGpDZlVndkJEelVQRkxSNnkySWlKOGZKVTBoa2M0bHhRU0lZL3pQcGEr?= =?utf-8?B?MFZReVM3OEZYZzZ0alZrZW1YK2FpM2NxektMNjNNell3a0o4Q0dzQkdiT0Z5?= =?utf-8?B?SjJnYUtMSWtqeVd5em9FNFNNTHJndEZjQWZLKzltME5GM0J2cTF6MFNnUnk1?= =?utf-8?B?SExPRlJMRzQyZEoxZHZDNE0wZTFPYjNRQ3BJdVBzcC9XbmhxVlloZDl1bHFh?= =?utf-8?B?RitjUlpqalFRaGJvb3VydGFYTTVQOFF1bmd2cTYwMVdGazFnbld5S3J6VVlq?= =?utf-8?Q?RToEmbzGdpGpv0lqJ5Nr4ohub?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: ardeb+QdF5rqq5bDbLsA2aFPRlDR0oYzzcOSG2sz+9HkemCDBCnsokRAHzoOx1t7ACEo7Yv+EmU/SRuiaTqYofxXv8pwuTEVYq+0eawMck5iUrvO6SdKwShh1Qj0+TCB0jcQxXx47hrUK/covlmMD59lrX6r4QD3BfexNz6L8fiyn+Vw0ohhOuS+QpxpjGWJ5ztuIZytvehjmYpWqQ8x568f8B5o0JxVmz9eegjN1F6chBTK1GrCGUnwWaueCk/LHnHn/3Raucbsj9Ox7dGD/Al8ZUnK0+yrdUlKNhm7WgNugDA9s7Exk/uPWKRle0XKYdghfaxznSV+q3wcj7OZTeveY+carvbAauNzftr5p2m1WK76KXeP1EQRmVhfm854HhYpL+EXZ5BSVhJFzicPB4hqeKUIwpdZTnKQU/nU3gZ3Zvj/2KyRefRdjuhVAItnTr8yVfX05tRWluRYPS7nDnbW4wkroVavn3ZU1FloL1sDNOQ40IPPsJ9+l+IE9cuk4adlR3OgzlyFCD+aMJE9YHGPvYJWhl+PInh43i5lPzIT2pYTDVqnIsiVV1grCAwXW6oxltiTqFz8Ck7IYwxNXst/HOtKLbSvDlsCpZPDMpA= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: ef798c69-555c-4883-a5a7-08dd39d89790 X-MS-Exchange-CrossTenant-AuthSource: SA2PR10MB4780.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Jan 2025 05:00:57.6676 (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: 6FWvCDwDg4b/V1+MM/cinCfdMewRrKPJLWbptVRLMAXQhkERwjoT89x0+OkygJqmVLtfwYHB2qrApzjf6LV3Lw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR10MB4345 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1057,Hydra:6.0.680,FMLib:17.12.68.34 definitions=2025-01-21_02,2025-01-20_03,2024-11-22_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxlogscore=999 malwarescore=0 adultscore=0 suspectscore=0 mlxscore=0 spamscore=0 phishscore=0 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2411120000 definitions=main-2501210039 X-Proofpoint-GUID: -7EMirwfzDSH2bGiz3XK9GoazZSV-pgQ X-Proofpoint-ORIG-GUID: -7EMirwfzDSH2bGiz3XK9GoazZSV-pgQ On 1/20/2025 5:21 PM, Jiaqi Yan wrote: > On Mon, Jan 20, 2025 at 2:59 AM David Hildenbrand wrote: >> On 19.01.25 19:06, Jiaqi Yan wrote: >>> While I was working on userspace MFR via memfd [1], I spend some time to >>> understand what current kernel does when a HugeTLB-backing memfd is >>> truncated. My expectation is, if there is a HWPoison HugeTLB folio >>> mapped via the memfd to userspace, it will be unmapped right away but >>> still be kept in page cache [2]; however when the memfd is truncated to >>> zero or after the memfd is closed, kernel should dissolve the HWPoison >>> folio in the page cache, and free only the clean raw pages to buddy >>> allocator, excluding the poisoned raw page. >>> >>> So I wrote a hugetlb-mfr-base.c selftest and expect >>> 0. say nr_hugepages initially is 64 as system configuration. >>> 1. after MADV_HWPOISON, nr_hugepages should still be 64 as we kept even >>> HWPoison huge folio in page cache. free_hugepages should be >>> nr_hugepages minus whatever the amount in use. >>> 2. after truncated memfd to zero, nr_hugepages should reduced to 63 as >>> kernel dissolved and freed the HWPoison huge folio. free_hugepages >>> should also be 63. >>> >>> However, when testing at the head of mm-stable commit 2877a83e4a0a >>> ("mm/hugetlb: use folio->lru int demote_free_hugetlb_folios()"), I found >>> although free_hugepages is reduced to 63, nr_hugepages is not reduced >>> and stay at 64. >>> >>> Is my expectation outdated? Or is this some kind of bug? >>> >>> I assume this is a bug and then digged a little bit more. It seems there >>> are two issues, or two things I don't really understand. >>> >>> 1. During try_memory_failure_hugetlb, we should increased the target >>> in-use folio's refcount via get_hwpoison_hugetlb_folio. However, >>> until the end of try_memory_failure_hugetlb, this refcout is not put. >>> I can make sense of this given we keep in-use huge folio in page >>> cache. >> Isn't the general rule that hwpoisoned folios have a raised refcount >> such that they won't get freed + reused? At least that's how the buddy >> deals with them, and I suspect also hugetlb? > Thanks, David. > > I see, so it is expected that the _entire_ huge folio will always have > at least a refcount of 1, even when the folio can become "free". > > For *free* huge folio, try_memory_failure_hugetlb dissolves it and > frees the clean pages (a lot) to the buddy allocator. This made me > think the same thing will happen for *in-use* huge folio _eventually_ > (i.e. somehow the refcount due to HWPoison can be put). I feel this is > a little bit unfortunate for the clean pages, but if it is what it is, > that's fair as it is not a bug. Agreed with David.  For *in use* hugetlb pages, including unused shmget pages, hugetlb shouldn't dissvolve the page, not until an explicit freeing action is taken like RMID and echo 0 > nr_hugepages. -jane > >>> [ 1069.320976] page: refcount:1 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x2780000 >>> [ 1069.320978] head: order:18 mapcount:0 entire_mapcount:0 nr_pages_mapped:0 pincount:0 >>> [ 1069.320980] flags: 0x400000000100044(referenced|head|hwpoison|node=0|zone=1) >>> [ 1069.320982] page_type: f4(hugetlb) >>> [ 1069.320984] raw: 0400000000100044 ffffffff8760bbc8 ffffffff8760bbc8 0000000000000000 >>> [ 1069.320985] raw: 0000000000000000 0000000000000000 00000001f4000000 0000000000000000 >>> [ 1069.320987] head: 0400000000100044 ffffffff8760bbc8 ffffffff8760bbc8 0000000000000000 >>> [ 1069.320988] head: 0000000000000000 0000000000000000 00000001f4000000 0000000000000000 >>> [ 1069.320990] head: 0400000000000012 ffffdd53de000001 ffffffffffffffff 0000000000000000 >>> [ 1069.320991] head: 0000000000040000 0000000000000000 00000000ffffffff 0000000000000000 >>> [ 1069.320992] page dumped because: track hwpoison folio's ref >>> >>> 2. Even if folio's refcount do drop to zero and we get into >>> free_huge_folio, it is not clear to me which part of free_huge_folio >>> is handling the case that folio is HWPoison. In my test what I >>> observed is that evantually the folio is enqueue_hugetlb_folio()-ed. >> How would we get a refcount of 0 if we assume the raised refcount on a >> hwpoisoned hugetlb folio? >> >> I'm probably missing something: are you saying that you can trigger a >> hwpoisoned hugetlb folio to get reallocated again, in upstream code? > No, I think it is just my misunderstanding. From what you said, the > expectation of HWPoison hugetlb folio is just it won't get reallocated > again, which is true. > > My (wrong) expectation is, in addition to the "won't reallocated > again" part, some (large) portion of the huge folio will be freed to > the buddy allocator. On the other hand, is it something worth having / > improving? (1G - some_single_digit * 4KB) seems to be valuable to the > system, though they are all 4K. #1 and #2 above are then what needs to > be done if the improvement is worth chasing. > >> >> -- >> Cheers, >> >> David / dhildenb >>