From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from CO1PR03CU002.outbound.protection.outlook.com (mail-westus2azon11010061.outbound.protection.outlook.com [52.101.46.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 4EB941F3BAC for ; Thu, 2 Jul 2026 00:33:38 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.46.61 ARC-Seal:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1782952419; cv=fail; b=rNmUI9iDFNceXJ/FdgMzNj/3f7lo+7Dz2mmZwGYs01SNeHLK6TsLkyOuiNxSv5qqgt5qsysLPPcOJLtU+oFMR7LsbzQMMPcg0jVkrsTxcnKtblR+o/LwalwjzNq+MmyOq0rlS8czlyfRDwT9IBEEUidV1liOAKSGD1Xq+iEW90k= ARC-Message-Signature:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1782952419; c=relaxed/simple; bh=L6zRx9o0DUYM5MbPfzBG0DnL0xXblJzL0aRcRHOwJfs=; h=Date:From:To:Cc:Subject:Message-ID:References:Content-Type: Content-Disposition:In-Reply-To:MIME-Version; b=WEWMNKahoIWf/f2BYNjBkOy6jB62xGcmhRXys8WSsW2hRCe85qYRZQQyO5636M8//uBC0kZsG9zxZ8qY8V7Lec8DyC3ipJuR03mU024IEpw/rZQRfYekczUCGbpnCblEm2JcouG68/fQkNxT9At+7HAxkS5NVJk0XMWJZAQgfDE= 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=HIKnYfMx; arc=fail smtp.client-ip=52.101.46.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="HIKnYfMx" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=aOF59wYSp6HQM9KBiAJFEs9S+ZurxY2Vxp8FCTus2zTFGyMoe8JmpTVgh0m1DN6dTWIYzBOHv1UyVS9a6+U3j9RjXrr9+1S6LnxZaZTyAKwfbPTmwlkjW94Su7yMT8IUrqBOQT6WJUJ40PGCecFDL48e+mOzYBWrrhuIs8CmHUgSBPLqqLox5At/laycceYB889OdbwYx4tg2n2n8Ftf4J6uYWkBtXwZx0z4irLLjrc6mlSZNFp7gaJsznj4iKeaNn9MqIOnA6FUme69HRi81zKD4KT/pqZ2UN2wIkPJDmY57hdrvrQxdGfcFEvg1aQ5BC1LHs44n7xFXWX8vkLlJA== 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=m42lnPHGzYNx82AuPEg0M7yNf9G1EujSbcbss3lqrtg=; b=xLFRMf1bt/gU58BpPYrShJgo2GNVlmyH6TVmIew+tHrYM3gI0I6JsNz4uK4jBHvxPRUAzFK9UaBc3STEMfwFaOKRQclkONsjNDNw/ybNHqiX+e3qKN+s5qkKXhPP/qfg+mVfREQYsUG2HrWpPBgae49c0N8eI3QfkiIgTgTcjte9bZ95IwtjOr/rXiJUOIeWKO7jMCCNKkwyVWUK7D2VVYZvnON21sOw0NWDHHf55CXd7y5SXYSnXrnTveL//aopw+bcRoLSP0uvurtEh8Cs73aBH6tqKM0hrQpVv76FX2OJzc/ZT7BA6+7bmEekk5vYXhoKtvwIZnn+wSQnANrDAQ== 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=m42lnPHGzYNx82AuPEg0M7yNf9G1EujSbcbss3lqrtg=; b=HIKnYfMxpJ6HP9ecvgCE/V0/K+/ZRKA5hhUp1uxxXGO1ZfHQvrM7tRtE/s/djUkiNAII6w1TdPMrmy7pZALoyHlKjg9+0oES92Mb/jCChkp5u4iE5rFgHDSll571PG8IQXd+juRuiZty+ND9gAVx0NhpPubqpCW6NiVl5f2E12icffGCqBSKK9/5fjynIVwHz01UcOjFtiB6U1eywa+sQIwE4AuDCURd+Mvo3Gz0snisjmP1zJLH6e1TsUvp8uFl+pLqu6Ex1vrO6XMBgEm8Fd6D1thn54wvKyIUL/yCtlCCAky1VeDEybkEp7s1AqyqCxhEJXWVQRPH+rFg5TIBCg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; Received: from DS0PR12MB7726.namprd12.prod.outlook.com (2603:10b6:8:130::6) by CY8PR12MB7537.namprd12.prod.outlook.com (2603:10b6:930:94::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.181.10; Thu, 2 Jul 2026 00:33:34 +0000 Received: from DS0PR12MB7726.namprd12.prod.outlook.com ([fe80::5807:8e24:69b0:f6c0]) by DS0PR12MB7726.namprd12.prod.outlook.com ([fe80::5807:8e24:69b0:f6c0%4]) with mapi id 15.21.0181.008; Thu, 2 Jul 2026 00:33:33 +0000 Date: Thu, 2 Jul 2026 10:33:28 +1000 From: Alistair Popple To: Zi Yan Cc: Andrew Morton , "David Hildenbrand (Arm)" , Usama Arif , byungchul@sk.com, gourry@gourry.net, joshua.hahnjy@gmail.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org, matthew.brost@intel.com, rakie.kim@sk.com, ying.huang@linux.alibaba.com, shakeel.butt@linux.dev, hannes@cmpxchg.org, kernel-team@meta.com, sashiko-bot Subject: Re: [PATCH] mm/migrate_device: pin large folios before splitting Message-ID: References: <20260701140638.840773-1-usama.arif@linux.dev> <78C557ED-3CF3-4558-9BA4-C43B30E63F67@nvidia.com> <20260701122745.2bfab3347691b658fb93f601@linux-foundation.org> Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: X-ClientProxiedBy: SY5PR01CA0084.ausprd01.prod.outlook.com (2603:10c6:10:1f5::14) To CY8PR12MB7705.namprd12.prod.outlook.com (2603:10b6:930:84::9) 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: DS0PR12MB7726:EE_|CY8PR12MB7537:EE_ X-MS-Office365-Filtering-Correlation-Id: bca4c347-0d6a-4780-2802-08ded7d18c1f X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|23010399003|7416014|376014|1800799024|366016|56012099006|11063799006|4143699003|22082099003|18002099003; X-Microsoft-Antispam-Message-Info: JNlYmNZ3dDGEmP+Qxph6Wnjr377Xux3baAGEPV/fpkADojwMm2OFuPL6oMBomG9RflRpEi2c2TlEJDtG7EKWCDqRgsNWBOCglDt/JW8Q7RrOQrvOhnqLMUzsaKKE+XZDt1/Eh0pg1hbpba9Mz3TO7bL1jC1P996I2OQ9r3p5lowulowLOnFpaHEkMYZ3mJBHOp3ex9MBXeTn2B2Y8oh7fI7V+lvbT+m9pis0hnfTOGyuHFy4C+M5ZVEpnjC0kcGvLZOCjzx6BG5IbhoSMrJYYqVe32WtmcOszH3jE/nrkaUIF0yVN6tXbAPlPYl06zGOOICy8fm8sryIcEca3XDQhlSXiluk0hGuE+2YCMZWuBU4Sut1DlJjJBSjAFSm38y/rZW/O09fk/OyyccwJNEl71KmmiFahLTXcuOXB6mh2gYGuRiO0zyDrJVcOWasGtKDMEUi9Oj6HJVNuVqLZ1osd/DKkTzAaPhyFMzPolWAiRUUGbzH0jj8r+XKVnZoz2uxSG2WGPwHU3+fK7TaS6dItCe5ogtlYdiZeJ45PLPtrpgNeII/93dZuW9TE21yNRhU8/fEPRIw33O7ochIQ0QQPnyFBIgpLTRqje4pSAQMCI9bBGVTVfzkt3Vmte9ULY2CEyr1a59+DvZhyg5jytPQ+9ZWIIZ1ktmVfXfwgP8tEIo= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS0PR12MB7726.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(23010399003)(7416014)(376014)(1800799024)(366016)(56012099006)(11063799006)(4143699003)(22082099003)(18002099003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?U3dBRFFKVWFvbkdmbDI5Z3I5dStEV00rR2U0cm9qN091T0hDaE01bysvNkM3?= =?utf-8?B?MXVUUHF3MWVhREZNcW1ZQmVvR21VN2U4TllDckY0Y09PYk1KcVRvTUNOMFVX?= =?utf-8?B?eFNGdkxMeVNmQ3pGRjAvZlRwZnRyWVRVNURlVFVyTU8veDNPdS9sWTF3U2JE?= =?utf-8?B?bXJ1bjljZGtqalo3aEJtSHVESDhHeVhtSkxmb3J3T0ZsRDJyaERxUzlGelJn?= =?utf-8?B?UzBsWDhhazZubEx1NWJaRU0zZ09EWWlOWllJSmpQOHBpY0g0VW4zU1k4a3NB?= =?utf-8?B?cEgrbldBN2tOWk5HQ0M3S2gzY0dycjl3ZXFTV1FKT0toN3NwalNyRC9vY1Ix?= =?utf-8?B?eHd2bnhiVUVEYVJFTkZJb2FqU1p3V00wdHdQUzBjM3NMOGc2WUxjcENJeFIr?= =?utf-8?B?Q3loeHNtelNxeVFtYXRmcXlGeTVMdEpsLzc3MUNnUWR6QzEyZGxkdVI1Nzk1?= =?utf-8?B?T0lubWpLUkFqOTNSbHYzaWRYNWJoWksweGhkazYvdEhROHRsZWk4dEVFZzZ4?= =?utf-8?B?aDdsSFJQQU9GYkxPMkVkb3ZOTnJ4RmVXZVZtS2JxSE1GM25mcXhWaFp1dEhZ?= =?utf-8?B?UG0rZmVaQXhOMjZZN3hiSTRybVVSbnVvUW5QQ0cyTldNL21BekRaNXBxbXpP?= =?utf-8?B?MlIrTmgvVUZUR01WSW9mNHU4ODB0RUEyM3NpWlh2ZE4vZU5BdERmdDJGMlhI?= =?utf-8?B?R0hpb09saVY4QmFCZDBIM1liUVJtM0htYlpjQUNXV2liYzRielNndnIrWlRU?= =?utf-8?B?T3ZrWkxmbHZST091WjhyaFpqT1MxMDcvQUhhSHJZaTFabjVYczh3ajNpNXBj?= =?utf-8?B?bUN1WUVQK3VUU2JBU1pFbDRYZG5pRXc5eDl6OG0yTGJBVGc0MllMK0FMaVhX?= =?utf-8?B?T3R0TzVxSkNHemVKNHo5L2NjWHcvVFRBUXF5aDNCcFNrRmh0SHpta1VQY2Va?= =?utf-8?B?VjVvLzY0emp4eU5yOFl6RFZVN1ZyeXdHUEtockZ4TEFXa3ZiN1FtTFdLcjIv?= =?utf-8?B?aUZLNHNTQ1ViMmVIZ3MvVitJVll1Rkl6SWw2VW9VWFFBNjZNeDhCUGNrZ3ZD?= =?utf-8?B?TndyS0RqNE9FYStwV2gwLzNYK1FkY3U4aDk3WEFvbzZZY290Tkh5TUY2aG0x?= =?utf-8?B?SWtJSVJ5OHRMd2ZVZ1FxQVgyYVlSU1Z2THp6YkxmTHdKaXVLbWo5ZkpQd2J0?= =?utf-8?B?SjBaSnMzZUEzOVZPK01NYUtsRVVJZHpRV0o2ZUhMcGY5dk1MOHpqMSt4cHVC?= =?utf-8?B?SFl5Z3d4dkdPdmVQSERuSmd1ME50Q1d6WXB6THpzVGUwTzc4S2htaGJwNytI?= =?utf-8?B?dWlhaE9aMlN6a2JTVFg3NlJsUFRONkpObXM4eFFpMW8xcFpCeUp1SEpvOXMy?= =?utf-8?B?M1lreTd1MEdvZ3c3YXM1YkNPSjdXU2x3MDVXR1ZWQUx2cVhZVFZxVXcxL2Uw?= =?utf-8?B?bzE0UmdJM0h2aHdKZnU5a1NYZGxGNWNHMWs2TS9sZCtoSjc1N1BOTTZSVVV2?= =?utf-8?B?alZRaTNXQ2JNM0Y0MUlyWUpISnJSTFJ6U3lHVGFiVkViTnpSVCt5NDJiRUh2?= =?utf-8?B?TnRvQVI2ekNObERhc2VBdjJVY1F3OUN6ajZPZWVpL2pONVBuOVdiL3FibWpk?= =?utf-8?B?enVWODZkcXBGL2FrQ3VnY2hGRFpvNysxOENkdFdZR0tkaUFwT2g2VStyUjNT?= =?utf-8?B?N2ZGQ3JUbURUM055czlJRGpGTDI2Z3JiQWt0ZGZuY04xQ0tsOVVhekxrQzVh?= =?utf-8?B?ZXRhQXg3c1BIdFZKOUNndWp5cm1ISVJsTU5VMnhtT0VQV0l0bUhsWDZPcFpr?= =?utf-8?B?dlFCczZpRkxmSzVUdDBpQUdDcVNlVTNwcU5BeitScWZqTHJldmtIdzhVcTdk?= =?utf-8?B?Uk9UQ1ZWM3pqUWZMRXdiK1djZk5xMUhMWk5UT1U3MzJSOTZzOTY5SmExVjFE?= =?utf-8?B?RTVEdHV2dXFyZzh2UHBEN3lIRStVL3QxdWhFa0w1bG5tV0NVTkRHMmZhNmhG?= =?utf-8?B?aVBZV0EzRXBrR3JpWXlUWXRVT0lScFJUb1kydG9OTlMydkwwVWphdWl2OE1r?= =?utf-8?B?S1dUWUdzSUJaYUh2RXpYRE5lbEp4SzZqb2ZBbEVsWTdPZStXZFM1NVBGZ1ZT?= =?utf-8?B?TW1EamU5dkhKN1RrLy9weGlJNFJiOUM4RDBBcFJqZlNHK3l2WW1HUzBUYlds?= =?utf-8?B?RUtBZGhJS01aWG40cmY4YzBEMitkNkFkN243K3p2VGpXR3NndWdaU2xxNXJj?= =?utf-8?B?RVozNVBzM1BBak5sVXVNZG1ZRzhNaGVWTmNWVlBCdjRmZXg5T3NDRHhKL2l5?= =?utf-8?B?dkdqNzhkUWpkMmR2QkRVdWNrQ3RYZFg4NzJHczlTZUVyNnp4SytXUT09?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: bca4c347-0d6a-4780-2802-08ded7d18c1f X-MS-Exchange-CrossTenant-AuthSource: CY8PR12MB7705.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jul 2026 00:33:33.8826 (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: zm3bvxrfNXTVgbJGICMqo+of//0dJOYLBOv0hmDWyCd4pvokpaFFytmYO5YvymuKSVo7ic2c57PS1M9/K06ojw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY8PR12MB7537 On 2026-07-02 at 06:16 +1000, Zi Yan wrote... > On 1 Jul 2026, at 16:06, David Hildenbrand (Arm) wrote: > > > On 7/1/26 21:27, Andrew Morton wrote: > >> On Wed, 01 Jul 2026 13:02:10 -0400 Zi Yan wrote: > >> > >>> LGTM. Like David said, the comments might not be needed. Thanks. > >> > >> I like the comments! They may be uninteresting to those who are > >> already familiar with these things, but they aren't the target audience. > >> > >> How are others to become familiar, if not by this? > > > > I mean, it's one of the basic rules: if you lookup a page in the page table, the > > moment you drop the lock that might be invalid. > > > > If we were to document that everywhere... this is not really the secret sauce we > > want to document everywhere. > > In this particular case, split_folio() is used in migrate_vma_split_folio() > and split_folio() wraps __split_huge_page_to_list_to_order(), which documents > the requirement of elevated folio reference. One who wants to get familiar > with kernel code can be expected to chase down to > __split_huge_page_to_list_to_order() and find the requirement. > > With LLMs, it is probably as easy as asking “why is folio_get() needed here?”. The interesting part of the comment isn't why the folio_get() is needed, it's where the corresponding reference is dropped/returned. I've spent far too many hours in this code trying to figure out why a page didn't migrate because of a spurious refcount and it's not easy figuring out where the matching get/puts occur. So the comment could probably be condensed but I think it's valuable. - Alistair > Best Regards, > Yan, Zi