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 805DBC54E67 for ; Fri, 15 Mar 2024 19:22:33 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id B1C3B8013F; Fri, 15 Mar 2024 15:22:32 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id ACB22800B4; Fri, 15 Mar 2024 15:22:32 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 91E0A8013F; Fri, 15 Mar 2024 15:22:32 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id 7DC6E800B4 for ; Fri, 15 Mar 2024 15:22:32 -0400 (EDT) Received: from smtpin08.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id E550CC069A for ; Fri, 15 Mar 2024 19:22:31 +0000 (UTC) X-FDA: 81900244902.08.20C9396 Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) by imf24.hostedemail.com (Postfix) with ESMTP id BDF4D180008 for ; Fri, 15 Mar 2024 19:22:28 +0000 (UTC) Authentication-Results: imf24.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2023-11-20 header.b=H5Z9jmMo; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b=YTuCe6Qe; arc=pass ("microsoft.com:s=arcselector9901:i=1"); dmarc=pass (policy=none) header.from=oracle.com; spf=pass (imf24.hostedemail.com: domain of jane.chu@oracle.com designates 205.220.177.32 as permitted sender) smtp.mailfrom=jane.chu@oracle.com ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1710530548; a=rsa-sha256; cv=pass; b=mOWSe1E/phzvJ7arQzaIXK+SkriW+bUplsy1WHOaYmnuX6SHdRoEuDAYCQD6YPOiiDzUq3 FL1e9DNuCO9CHzjS3x/mrp0R2RuCDOSd6XphgPG1giiMIOffZMVY7AGEg4Uc+begIxvy21 pxoz5A1cP7RrCjPct6k6n/EwANxPTjQ= ARC-Authentication-Results: i=2; imf24.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2023-11-20 header.b=H5Z9jmMo; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b=YTuCe6Qe; arc=pass ("microsoft.com:s=arcselector9901:i=1"); dmarc=pass (policy=none) header.from=oracle.com; spf=pass (imf24.hostedemail.com: domain of jane.chu@oracle.com designates 205.220.177.32 as permitted sender) smtp.mailfrom=jane.chu@oracle.com ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1710530548; 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=dY7mHu2hvehcdghlAanAV3n15WStqMygLdAswszi8ms=; b=rh8dPm2fXiVXY8CBMARgSi8PvDG8p1ZWezgbA2fbsJGn6BAb6Quk7Z7fZ7T7e3PFLiQPw1 88C5IMYfxUhKFczB76FBqR6CVgS0T8HsErubpWqdWuArTBKKLTwteS0g1sdz3/COQodrvI 6beDs/Yno57oTnSNAlhP6DSgG9ViM1U= Received: from pps.filterd (m0246632.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 42FH8xoZ030186; Fri, 15 Mar 2024 19:22:15 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=message-id : date : subject : to : cc : references : from : in-reply-to : content-type : content-transfer-encoding : mime-version; s=corp-2023-11-20; bh=dY7mHu2hvehcdghlAanAV3n15WStqMygLdAswszi8ms=; b=H5Z9jmMoKNxzcKgNHH6tLiiOR/OuRfO4JY3E8SvsEVPMuziB85M79EWtPA6qDDIMnY+E pSu/tEo52bQzhRMmjWFDg/8gdD277gnS/23eKH174J/902TFbg0Sqb5I/3G19ULE15rF WKE97/hOOkNR1rF5d92+MLqvTMntkikN+rKFBYvWGuR8kvybrES0xuP2QKMe87ZrJnZ2 NvBj2GS8kQU+8WvIi3705k3MWX3uJ+24jJQSzgLT9j9PseE5feS4V0zsB6jWs5Yp6hCl t5vpq2XHSzZ4hG9PJLuNwd2Na5N7tTioC2I31IReG7jS9Pa0Mxxf7x9/ZIooVquuknbt Lw== Received: from phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta02.appoci.oracle.com [147.154.114.232]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3wvt340aeu-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 15 Mar 2024 19:22:15 +0000 Received: from pps.filterd (phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 42FJDSgJ034621; Fri, 15 Mar 2024 19:22:14 GMT Received: from nam10-mw2-obe.outbound.protection.outlook.com (mail-mw2nam10lp2100.outbound.protection.outlook.com [104.47.55.100]) by phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3wvtpmmd25-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 15 Mar 2024 19:22:14 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Oxg3fQldTMN/9P6jkjugkkH7U1xpgT8UyTJT5HdcoyWpePnvv19XiUAeDg7iS0KAILNq8sDlcFeCKTUMwjUyifHkAAM0D4QKna8+QkJo0z0gNMdY0AVFZvVaXSlik9SnZWCPWv7HMNYRBfppKNQdxdOIXAq5vAvfXpiGobsK0ogZVfZJ57dSHnab7aQbwV9EnpbHKvik3fz9IBXSPLTl+GIa4F1Bx4EENTOab/bnHXLW1Vm4bqawPAO2Ms4KB8w0QRyTrk6SNMLSZC993TdVVmnIaDcNITyGp9f5ik5vMkJGbA3dy5JxNHoP2MACfSD8iOPntnx9IjNS2Yy8jqB7YQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=dY7mHu2hvehcdghlAanAV3n15WStqMygLdAswszi8ms=; b=Mzf8Vk1WCOmC3zn/dg7Fmj5lalBpppe8LBWVD4HC+++XejmgukIL9ExjtGynwUCPHX5TIJatv8zmJAjAixDqb/1l3ASMrT56reDCXoqRPA7TLJTwtbu7O+6IV4gZebqBPYCrwHXs3Nvmhla1N1ULW3EMHURvFK271ymRqRelIlHtrqwbsEoajs2zgHMPzhmZ4kBktM4CUv/CtlFWm1Od5KWgeY0gadhf7vPYGHcT4MiZDc/weG+9gdwvVVsuKJZ5bzVY4AafUowfDixbCm5kK9TGDmaHU8D2rsKQoxryXO5sUaUkHF8zHDmvl7ca7LaPpdtJASJY+ktk9bo/6HkzlQ== 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=dY7mHu2hvehcdghlAanAV3n15WStqMygLdAswszi8ms=; b=YTuCe6QerXgd+CPNYdZF/3CvfcPhet3x4BHDaIDuSAxf1AlsBmz6MfWsqNqJmzBZowyFPSIu0LCdpRFutu/TdidkbtPo14bsd6KAJgd+j9B6hJPpRm0SHlNLvTDc0RCWpvWbfHePaBKrEqkh5CprQrO02CdoaivzvOsKfPkBouA= Received: from SJ0PR10MB4429.namprd10.prod.outlook.com (2603:10b6:a03:2d1::14) by SA2PR10MB4649.namprd10.prod.outlook.com (2603:10b6:806:119::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7386.20; Fri, 15 Mar 2024 19:22:11 +0000 Received: from SJ0PR10MB4429.namprd10.prod.outlook.com ([fe80::210e:eea7:3142:6088]) by SJ0PR10MB4429.namprd10.prod.outlook.com ([fe80::210e:eea7:3142:6088%5]) with mapi id 15.20.7362.035; Fri, 15 Mar 2024 19:22:11 +0000 Message-ID: <3a5fc87b-7362-4971-a9ab-55154627deb3@oracle.com> Date: Fri, 15 Mar 2024 12:22:07 -0700 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH 6/8] mm/memory-failure: Convert memory_failure() to use a folio Content-Language: en-US To: Miaohe Lin Cc: linux-mm@kvack.org, Naoya Horiguchi , Andrew Morton , ak@linux.intel.com, Matthew Wilcox References: <20240229212036.2160900-1-willy@infradead.org> <20240229212036.2160900-7-willy@infradead.org> <5eab08d7-ae38-4f99-401f-f361466e34e0@huawei.com> <196d00e3-4335-4f8f-ac51-5ccfa5ef5f75@oracle.com> <55a1600d-340b-3262-99c7-8a30d6a92a84@huawei.com> From: Jane Chu In-Reply-To: <55a1600d-340b-3262-99c7-8a30d6a92a84@huawei.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-ClientProxiedBy: MN2PR04CA0015.namprd04.prod.outlook.com (2603:10b6:208:d4::28) To SJ0PR10MB4429.namprd10.prod.outlook.com (2603:10b6:a03:2d1::14) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR10MB4429:EE_|SA2PR10MB4649:EE_ X-MS-Office365-Filtering-Correlation-Id: c4c73f0a-503e-4c91-3124-08dc452536ab X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: pM5gU1nQ7F3i7tJSP4L5aOp/0MR7iaGGJldP7C278yktG6KeRCTFsUzh+o1S96157JL6iLT4W3LsMjx7MvryZnCIm/PDqYNytI2q4/4hoiMdjxfz3b/uDt8kuxjXhpV+PhMIczid66UHypQxUhj3KdZcZEvitIpH2nIo+DeqWyEEFEKc/iQMIxK3daEKET1hr+GWZMGtQ8ixVFJltI/HuTvAAiCHd8b6D5pN/Va+9nWRp77aZ5D14RJj7gM/oUZmUy0x9Je5TsY/ID7zWmyAiLRd5hZ0xTLnwV7GUrt8thrGXcNot8jC3AjRKyu9uIYAXQvRr9v+MRyUa8XZPQG+KqSO6EJ1vDc2WxQ7TqailDDScSpsctGWZRSfp0XG0dZ2yGV9d3/GWM+O565DJmA3XfqJJ0YI1GW880PaYGLiNdW3tFSK1UG8K1V8DwCPTd3dYkSri/y06kUy0lTEsKR+0cajSQYvtbEwrrzYrz/IBhGcqLA/JbZQiv05grWX//+w3cweqGqpSsVwhaNaxkXjzQOZfaguXdW1JXOy3xep3jZBkVHTdEJYFE78wUr16MWgb+XdhC+fDkaCEdx1JRf9Jq228YyDJZ5pZJbWMzPBAnHfiS/oqp0+dEhjinEFP2rDMzkTWpnI//7qnUOqnM5NaxTPwdt85bGH6kB36aByXdQ= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR10MB4429.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376005)(1800799015)(366007);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?V3FQeW40RU9odjdwdDltYnYzaWlwLzV1L2JCZ0NmQU9XTDcwSGZzVFhOTDZU?= =?utf-8?B?ZVhwT1Eya3N3K1ZOSmxxdkY0OE9wMmVxUW5sRDN0MERWNFNrSHZxVEF3eXY5?= =?utf-8?B?VUZKOUx6TDltaEhSMDdDZUthNmZ1ZzdWT1NPaG9wOHdxdHNjWmlQL2N5eGZP?= =?utf-8?B?SzN3ZjlwbmFDMUk1a0RIQ3BwQ3hTNTloM3BMcytVT2l1L290TTJpMXpZT2VO?= =?utf-8?B?Snpobk4wODBCbE8xaDh0a244ODE0V0ZKNCtUeU1PRWFFRm43UktBZXduR1h1?= =?utf-8?B?SW0yeEsvcklacFRadG1YTkJvS29ra0JhOFIwQ2tTQ2dWQ3hoVjVJN1JCZVd6?= =?utf-8?B?ZEFDdllVcTBteFNkYlltOS9FS0tiT0Nuc0tQaitqN1JVSWh3YkFtYzBUYTRt?= =?utf-8?B?UE9WTEVIVDkybWttMm05eVNKOTJIVXNMclFteU1YTHh2U0Z3eFBDZHFxTktt?= =?utf-8?B?RzJuckVzcDhYaVB0UzIweUJOYk13eTRrRytOaENTUytnNVdRQ0FlV2tMZEtX?= =?utf-8?B?UW1zZ0tvZ1RGOU02Tk9wSmx4cm12LzhreWJoQklyZUdCSTdQc0lGMzRDRmtx?= =?utf-8?B?Z0RLOUdJbUY5UE52STd1ZEFhTjlUZUIrMUZ0SkgrRmhERUNLRzdQbmxLK3Zx?= =?utf-8?B?TVhvYzNqamF2VXEwRDJxYU9hUjNnSHlVaVRwaDR5dFNvNzEwSUprTkN5VDFX?= =?utf-8?B?b2FpcmovRnR6SlBxM3pNSVJGU1JlZmhnb3BlSnhzdlh2WDBhWlluQ0tpc3Fk?= =?utf-8?B?UDJJQWxleTc0L1liK3ZhelNabDlhekZDMi9OSHM1MXVGWnJDaTJLaFEyWlZy?= =?utf-8?B?clR2YndjN3hxa1JUSTFuS3FjNlNaNlF1ZlpvNitTSjh5VXRvRHdjTWl3Rmtl?= =?utf-8?B?YUlsUlBFTDl1WjJ6L1ZhMmtKc0xGOFRQZ2VKSDB2Y1JTbmhkWUxlc3JBaWZF?= =?utf-8?B?VXhDT1phQUYrTWZFb0FJeG05UU5UMWZKdUMzUFdXWWYwL0FkTEw3VWtpSFor?= =?utf-8?B?WFcxdlBpUkVyTmlyU1dMWkVQVXBhckJkcHlOQ0ZjSm5VSjg5Wk5tS04xVkt0?= =?utf-8?B?Q3ZBY1h6U0haK1QvRnQ2RkZaTTk0aU9ZY0E3eEpaZkpRUmtXVWlVRkxZYlVu?= =?utf-8?B?d1Uwdlo2YVMxYXRjZDl1SGFnYnZPaGdUVG0vN3luUzFWRExxWW1jbjlwQlRT?= =?utf-8?B?YVFKTFhtK003bm92L3luYlJwakR1Ykk4VzRDYUR0bGlrMFplMTVmc0NjWkNO?= =?utf-8?B?bEdkSnV3TFVMTnliREFiYzd5NmQzTVloYWxtSDZEeDJRc0pCMU5iSHd6eFVZ?= =?utf-8?B?WExra1lmMW9yZ0xJRTZIZzY3NkduWDdmUmlhSnFtVEZBeHRoMkN3a2NHaklV?= =?utf-8?B?SG9DeFB0ZkNLU1ZHMmxsTWE3TWJZUHhuMGErc1I2ZGtpZlA5NWs1RERmc0hG?= =?utf-8?B?RnFIR1A0d3F4aWJIUWxHbEF5aUZ0TGhWNkY5Mk5MWTdlb3RoQnlwVS9ndkVL?= =?utf-8?B?WDdaMDkvbmNUZWkrdWlNQTBScExCUDdtTkVHSkJEN3ltL0grTmxOdEJVaVZy?= =?utf-8?B?UW5VM1R4UnUxbTlab1RtbnVmRzR1WkZLMGpva2djd0Z2QjdMSmo3K1hLQjNK?= =?utf-8?B?MUxtdTFORmdVSWcrZUk4ckI3NExmVnNhL3RWVGUzcjl4RkZHNzMzN1A1Qk1C?= =?utf-8?B?SGs5VUJudWFXY21iVitYTWhmNGR2WHZhMnBZTnNuUCtJMk1OUUhKQmNBYm5W?= =?utf-8?B?bDQwUkd6VnJzaEFGdGY5aFVJSmdxd1d3MVJvaGNYOGJHNjlaNnNxMitiQ2p0?= =?utf-8?B?MjFMNUo0TUJpSDdNSnY0dGZOaDBLNFhUVzVOTXhaZUJKaXBURGd6ei85STZt?= =?utf-8?B?ZFlSVmozeGV2WmVMakxvRFh5RHAyRDFNdTVpdnpzU2dvQUw2V1dlbWxhOU90?= =?utf-8?B?SnliRkVabVo5cUhjK3U2ZWlndEp4OWhETm1MTHBvUVd3UXEwZTg0SUw1YlBK?= =?utf-8?B?UzBhdG05RlJCSUJBV09XOVZVT1JaMWRPR2kvd0FXWlRwRmJCT05kVTMrOWo3?= =?utf-8?B?T09XNGI4OXVzd2FQYTBzNkxFemlKMElJTWtOUWs2dDd2WEx4WEpuVEZVRWVW?= =?utf-8?Q?SbhExZa6gClKgh/0gip6JtSMs?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: OqMpyBAKc+xR5NYLo95Uk9IAz8NsOpstaov0Qe5nO3oanTGdjY/ag08JvFV9ev/qkZMFTW8QBO4EOzlb61yZ293Cs/SzPgBzTXwX5eqYbjPX2PxiQlwtRbl7javTTUVnXlaWrzdMhwP3Fr8KZcb7VLOdd52a9a/G9Ye7Dbtxfd3Rqss7SlkH3XluPnbyQG/kzyrigXHJQ+m3gGnCLDYCmRQ3b6zFSmNEo8xuZ2MFiVsaZL62p0IkuTJk3ebfRAG3IvNbishQuGHFPsp5lnyqWL9SPLXir8yEt8xwHPgFPkPRlFIeVNGtwY81UkGtCZG9UaD9HoEtgn0TH7T/gymOCAy4O1ZdHp2kL/ZohPlvykmyoTS9KJtFM+1Eu53NOxk8/e0QEgUYdUAjhAoZAbbOHjbCY63W0iUgglkQctkorjHpGSkJSekbuiDMPYYXYCoM9tl9paV1yUE35Iw4clh3o/9Yg6rFlAjA8L7oikkgEZazn5r/19KFJoDsYOF+5jHMDDC1eI0yTDk9Wl/a3fS3HwwqdfmuJe2ftirf+ThaWK1c3bk26R3/YUjhEMTEcqXDEnDTubBmTTksSAVGnwKQ7qWhRig+WvPwC4yjc4D/n1Y= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: c4c73f0a-503e-4c91-3124-08dc452536ab X-MS-Exchange-CrossTenant-AuthSource: SJ0PR10MB4429.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Mar 2024 19:22:11.7961 (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: ay4a6Jf0voaEnjUts5jsZjTqC9KnChTRp7CR/91ZlG+4a8XOi6qiT4NX/DYAHxX+paQ+ncZOhCHIfkPZ5H+DJg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA2PR10MB4649 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.272,Aquarius:18.0.1011,Hydra:6.0.619,FMLib:17.11.176.26 definitions=2024-03-15_06,2024-03-15_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 malwarescore=0 mlxlogscore=999 mlxscore=0 adultscore=0 suspectscore=0 spamscore=0 bulkscore=0 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2403140000 definitions=main-2403150156 X-Proofpoint-GUID: dUldZF7krOd3fjppv5lSiYmKE5gcbNKO X-Proofpoint-ORIG-GUID: dUldZF7krOd3fjppv5lSiYmKE5gcbNKO X-Rspam-User: X-Rspamd-Server: rspam06 X-Rspamd-Queue-Id: BDF4D180008 X-Stat-Signature: 3xwkgdh4yo46op9bbshmcofnz6egiixp X-HE-Tag: 1710530548-917240 X-HE-Meta: U2FsdGVkX19SCnUSsigOxn3NfBC+8rKTMW+nzcGJRDC6RhK80uKg2IUspFaKg67m1cmSUUlB9cADwrYgytKjzN+JAqoswtcvYo4X9D3S9PSuPW/Kouz3zU3tRLOgxwBIw0DKSo71hJ7/VwNHMRaBFlXVNB2aQPaiJ2n8Ugy+rJQDhXriDEbbTi7mT9Cfcd6B44fi4OVvQY31yXhFEwOf+NXUiA8TI+jJ9LR8SL2tDAwEhbonBn5UEkkZPi2DL5I9S4EkYDYoV+11fCo2Dou5tTvV7HvKF/mJ3q7FVzUyuvr38qkoC3skmdylamhtHSfctoWbPNwhKAiEcbmJsYEywPfiAK3fkS72EBzgfZu3t3uPTLw9k1ZJQ3GUZgOW/NjQVX+gNBjW5/GnJ5yji33Y2PIymf+WUfRpLjfIJJJpKzmOTZfxYwF2h+eXWxuUhCM4AaqeR+GRq6Lu3rAq1fQlFsK1wIJuehJXw4TTMSMMbeWd54JVSDvwls6l3CsszSwTOji4o6LidshvXJ+rcq+T0pM0kAmVNgXiU68CI/FwAhzee9ZbS3f1fuv7MK671RRv/cKUcvVvSYc8muqJGAfdOY8pGxLtRtumpuGvQPaalmTEkgC+hM8kSiiM0/ez4Ny5o1b0JVr9JPXjqVo72/9ilcugJN+nnX4hOU+ELrMketFr4yXDHM9Ox830LGoU3jwq1hkcfdNxVCJtOw5P4LtZ10vozLOsyhhyUvCgv2kShjVjJ+rQ/j4QwJedYiepAQ+fCIHdrYsjE5JKHvGmBSOg3/QEPvMup6U6ewf1bF08slhPgV4dwac4lU9TmQjuUyhPm63HfJmbMhEYM9OSBOLoJtU5Io9Q04k8T16sFMCLY3nmAbpBqFRQazerDzuphsAyEBB0CZe8kD4LFCBJ9Y8KrKzHoGE8VgRfqtYMTNlKWz5bWNPt7TtIKNFSZFAm38Ko1fI0pTlH150uB79RvPc aECWWoiO pLFefglKz+xAePiCpoPTwSdpoY7dbvU0tY14zPicg3o7rcj+I+uX0QvXw3CBLj8hGJxC0c1A+7Sj9u29qnFXCUVs5pytVwBc//TgG0T2cQhW+cCi5I5rtRoNvKguWYKRYXLws 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 3/15/2024 1:32 AM, Miaohe Lin wrote: > On 2024/3/13 9:23, Jane Chu wrote: >> On 3/12/2024 7:14 AM, Matthew Wilcox wrote: >> >>> On Tue, Mar 12, 2024 at 03:07:39PM +0800, Miaohe Lin wrote: >>>> On 2024/3/11 20:31, Matthew Wilcox wrote: >>>>> Assuming we have a refcount on this page so it can't be simultaneously >>>>> split/freed/whatever, these three sequences are equivalent: >>>> If page is stable after page refcnt is held, I agree below three sequences are equivalent. >>>> >>>>> 1    if (PageCompound(p)) >>>>> >>>>> 2    struct page *head = compound_head(p); >>>>> 2    if (PageHead(head)) >>>>> >>>>> 3    struct folio *folio = page_folio(p); >>>>> 3    if (folio_test_large(folio)) >>>>> >>>>> . >>>>> >>>> But please see below commit: >>>> >>>> """ >>>> commit f37d4298aa7f8b74395aa13c728677e2ed86fdaf >>>> Author: Andi Kleen >>>> Date:   Wed Aug 6 16:06:49 2014 -0700 >>>> >>>>      hwpoison: fix race with changing page during offlining >>>> >>>>      When a hwpoison page is locked it could change state due to parallel >>>>      modifications.  The original compound page can be torn down and then >>>>      this 4k page becomes part of a differently-size compound page is is a >>>>      standalone regular page. >>>> >>>>      Check after the lock if the page is still the same compound page. >>> I can't speak to what the rules were ten years ago, but this is not >>> true now.  Compound pages cannot be split if you hold a refcount. >>> Since we don't track a per-page refcount, we wouldn't know which of >>> the split pages to give the excess refcount to. >> I noticed this recently >> >>  * GUP pin and PG_locked transferred to @page. Rest subpages can be freed if >>  * they are not mapped. >>  * >>  * Returns 0 if the hugepage is split successfully. >>  * Returns -EBUSY if the page is pinned or if anon_vma disappeared from under >>  * us. >>  */ >> int split_huge_page_to_list(struct page *page, struct list_head *list) >> { >> >> I have a test case with poisoned shmem THP page that was mlocked and >> >> GUP pinned (FOLL_LONGTERM|FOLL_WRITE), but the split succeeded. > Can you elaborate your test case a little bit more detail? There is a check in split_huge_page_to_list(): > > /* Racy check whether the huge page can be split */ > bool can_split_folio(struct folio *folio, int *pextra_pins) > { > int extra_pins; > > /* Additional pins from page cache */ > if (folio_test_anon(folio)) > extra_pins = folio_test_swapcache(folio) ? > folio_nr_pages(folio) : 0; > else > extra_pins = folio_nr_pages(folio); > if (pextra_pins) > *pextra_pins = extra_pins; > return folio_mapcount(folio) == folio_ref_count(folio) - extra_pins - 1; > } > > So a large folio can only be split if only one extra page refcnt is held. It means large folio won't be split from > under us if we hold an page refcnt. Or am I miss something? My experiment was with an older kernel, though the can_split check is the same. Also, I was emulating GUP pin with a hack:  in madvise_inject_error(), replaced get_user_pages_fast(start, 1, 0, &page) with pin_user_pages_fast(start, 1, FOLL_WRITE|FOLL_LONGTERM, &page) I suspect something might be wrong with my hack, I'm trying to reproduce with real GUP pin and on a newer kernel. Will keep you informed. thanks! -jane > > Thanks. > >> thanks, >> >> -jane >> >> .