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 4E56AC83F22 for ; Fri, 18 Jul 2025 03:13:37 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id CC0448D0006; Thu, 17 Jul 2025 23:13:36 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id C70908D0001; Thu, 17 Jul 2025 23:13:36 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id B117A8D0006; Thu, 17 Jul 2025 23:13:36 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id 9B0058D0001 for ; Thu, 17 Jul 2025 23:13:36 -0400 (EDT) Received: from smtpin12.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id 47D2410F617 for ; Fri, 18 Jul 2025 03:13:36 +0000 (UTC) X-FDA: 83675915232.12.903A997 Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.11]) by imf22.hostedemail.com (Postfix) with ESMTP id B7FAAC0002 for ; Fri, 18 Jul 2025 03:13:31 +0000 (UTC) Authentication-Results: imf22.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=QWL1Uem2; spf=pass (imf22.hostedemail.com: domain of matthew.brost@intel.com designates 192.198.163.11 as permitted sender) smtp.mailfrom=matthew.brost@intel.com; dmarc=pass (policy=none) header.from=intel.com; arc=reject ("signature check failed: fail, {[1] = sig:microsoft.com:reject}") ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1752808413; 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=0Zh1MBCC2Gk38HMrJPfkPrzzLDx5g2kiK4YGKjujovI=; b=Wry1gz74B40jdHxufbuJ5cUuDhwRqBMc7+gTCB64mxzcRE3vBqiqoFMV+uvAG0EklwEO7I xA/xmJJQGrirbZOdOpp6RWLimfjYAsi5bNbD5eR4cAqCZaf8doK9azOVW3D6EpsMPVv7AH 3YSXzMlZAny2piPa5+xD+FJP+w/IQuo= ARC-Authentication-Results: i=2; imf22.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=QWL1Uem2; spf=pass (imf22.hostedemail.com: domain of matthew.brost@intel.com designates 192.198.163.11 as permitted sender) smtp.mailfrom=matthew.brost@intel.com; dmarc=pass (policy=none) header.from=intel.com; arc=reject ("signature check failed: fail, {[1] = sig:microsoft.com:reject}") ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1752808413; a=rsa-sha256; cv=fail; b=26u094tFQfQ9wbpuEo3UmH9mULuRNJY+VX0P1PsKKzFmFphEsxf85hxv+SjkQueeot3yBs 0EB8CdgrxWJsUsmGhXWcw8Q9f6WaavlzTYxqtBsDAAlCDi8XUu21q4bISFPCk9H6h0ZStt J49RudIxyN/Z/Vc3I7mfDN+eIf+4vs4= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1752808412; x=1784344412; h=date:from:to:cc:subject:message-id:references: content-transfer-encoding:in-reply-to:mime-version; bh=A3J3aHClyRejz3nDEmys1uaPYh/nEObXco/VER7rQu8=; b=QWL1Uem2VJLvEjFcziFSGyJT5SaTHzfrHgXOKV8JxZP/3dG4nzBvTXvj jr+vWZI00ARXN5SJzGtsKDesgZPsrJ4Hu6b8DnCfa0QGQviC5zH7KiGTm 7tfMsTZOhrtCVxHabaSdyDoBSw7wDZfg7qP6kpADjEY1hUr/WsJUwoQr+ qXSwsfqTtbyk8J4yl/kbjzuqsodnB4R8gd3cEpxR2Fa71olMeaztv4qET wvFWmdVBKKmuG1dwdHwGfoDLsy0pRFbBzgP8oGafFSfxDaxh9GUBn1cZ+ TyQfa6I47nOajXfD0pJ9qSA2+Sn5Kx7C5en1+FI7IWrL+HWi/ykt9NDWJ g==; X-CSE-ConnectionGUID: zJxWfV2NQ/KIDH7fnibEkw== X-CSE-MsgGUID: wSxeDjk+S9ScrjGzYmzx4Q== X-IronPort-AV: E=McAfee;i="6800,10657,11495"; a="65671082" X-IronPort-AV: E=Sophos;i="6.16,320,1744095600"; d="scan'208";a="65671082" Received: from fmviesa002.fm.intel.com ([10.60.135.142]) by fmvoesa105.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 17 Jul 2025 20:13:30 -0700 X-CSE-ConnectionGUID: EACEIc8ESdO+Egfs/K7Dzw== X-CSE-MsgGUID: 7PRvpdXqQZ+DFr6TBXGGHQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.16,320,1744095600"; d="scan'208";a="181665200" Received: from orsmsx902.amr.corp.intel.com ([10.22.229.24]) by fmviesa002.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 17 Jul 2025 20:13:30 -0700 Received: from ORSMSX901.amr.corp.intel.com (10.22.229.23) by ORSMSX902.amr.corp.intel.com (10.22.229.24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1748.26; Thu, 17 Jul 2025 20:13:29 -0700 Received: from ORSEDG903.ED.cps.intel.com (10.7.248.13) by ORSMSX901.amr.corp.intel.com (10.22.229.23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1748.26 via Frontend Transport; Thu, 17 Jul 2025 20:13:29 -0700 Received: from NAM11-BN8-obe.outbound.protection.outlook.com (40.107.236.71) by edgegateway.intel.com (134.134.137.113) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1748.26; Thu, 17 Jul 2025 20:13:28 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=Zxp2i7S1xaHdkKGpK465B4N7HW+DTp2tpbExF1zMPX4ScQHUIY+WqbTNufiSdIUodzqauiqU20JhBfyp6cLjuQgbcbsO/QMVCPbfVnyoQW696oq6poI9lrphP2N8FFfy8r0Cbj2FN0EnitTO1HhvyiFRfrXko9iSaaFHc1KmKsHppmVILe3iXKZWvxq+oFTn9+JJ6gSoAEngbpPnogP0Or/EgLJwapeAHt9bRde23go9r8aaDsay+PDYWPuXozPSpJISmPreQcydjKwK/e7Yg+I8Lo10u9Tr58tY912ZfvZZHkTrKEQ+7Z3OXDDSryt2184WrKDALySwUqr9g6GhBw== 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=0Zh1MBCC2Gk38HMrJPfkPrzzLDx5g2kiK4YGKjujovI=; b=Yv2ViZQ0efp/4U1rxdD9HXAfxkKCYvVkYFONsOHKL+IZzRrD6CXWKQcSEecq8e82drHwfQRDk06pCHTg4+Gja+oJLNGeBh8IDmyAyDcxtwMrmpiY52Vu6G2jGEvQk2pjKZUkYqVKA2jhAPpZfR6P1ouOlX/vGC8g9tfQlBqUoo4OkwVY9bExI8vb4K0lOPCxo/MM689JfwfGdHd0P/RWH8uhOmX9JS8MrFTrt/jVKzxen/VvSNLGpQ8IS4OPkZy+O5sRWJTYNvYJ5BY9h//cuh6iyWBarWib2pJXz8OJVQ42mEJeelBH7MvGosETQW0P0uoSnpUZwHOoPHluJLbFUw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none Received: from BL3PR11MB6508.namprd11.prod.outlook.com (2603:10b6:208:38f::5) by IA4PR11MB9204.namprd11.prod.outlook.com (2603:10b6:208:56d::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8943.25; Fri, 18 Jul 2025 03:13:21 +0000 Received: from BL3PR11MB6508.namprd11.prod.outlook.com ([fe80::1a0f:84e3:d6cd:e51]) by BL3PR11MB6508.namprd11.prod.outlook.com ([fe80::1a0f:84e3:d6cd:e51%7]) with mapi id 15.20.8880.021; Fri, 18 Jul 2025 03:13:21 +0000 Date: Thu, 17 Jul 2025 20:15:04 -0700 From: Matthew Brost To: Balbir Singh CC: , , , Karol Herbst , Lyude Paul , Danilo Krummrich , David Airlie , Simona Vetter , =?iso-8859-1?B?Suly9G1l?= Glisse , Shuah Khan , David Hildenbrand , Barry Song , Baolin Wang , "Ryan Roberts" , Matthew Wilcox , "Peter Xu" , Zi Yan , Kefeng Wang , Jane Chu , Alistair Popple , Donet Tom Subject: Re: [v1 resend 02/12] mm/migrate_device: flags for selecting device private THP pages Message-ID: References: <20250703233511.2028395-1-balbirs@nvidia.com> <20250703233511.2028395-3-balbirs@nvidia.com> Content-Type: text/plain; charset="utf-8" Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20250703233511.2028395-3-balbirs@nvidia.com> X-ClientProxiedBy: SJ0PR05CA0162.namprd05.prod.outlook.com (2603:10b6:a03:339::17) To BL3PR11MB6508.namprd11.prod.outlook.com (2603:10b6:208:38f::5) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BL3PR11MB6508:EE_|IA4PR11MB9204:EE_ X-MS-Office365-Filtering-Correlation-Id: 6c7b4763-b248-4d9a-9a7d-08ddc5a90d08 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|7416014|376014|1800799024|366016|7053199007; X-Microsoft-Antispam-Message-Info: =?utf-8?B?THJQZHh3dklKVXRLdzc5alJRRlhEOFBqRXB3WjNkVTBqZjAzVG1NQ3hnd3N1?= =?utf-8?B?V1RnTXB4bFZBeVZJQ3lialc2aGZnU25yRzRHdU9kNXNqUSswcUhOQUNXQ3dl?= =?utf-8?B?c3ZwRFRXT0ppd3RkbFFnMHlxN0tEMGkwT2V2V2txV2JOcWI0bXZZQWt4dnZU?= =?utf-8?B?M2pjTDFmOG11TThlVEdhakJUSnQ1RDNnTmJKMjBGTkwwU3RwU2hqUmJoRTM4?= =?utf-8?B?UGZ3YlVBOE1pa2Qvb0NuY1J1Smx1OXc4dEhmeEhWc0FWTEFZdEwxQmJqRk1h?= =?utf-8?B?STI2Q2JTbE5aQmtLNjU1R21iRE45MzNOUHV1TWlWUWRPYzlZbjBQMDZQZ3c2?= =?utf-8?B?VzlNcUFkaG1EWmVsYW14TjRLWHdsN1JERnFPTEw4VUhtVnVPOHNOdE5MbGNY?= =?utf-8?B?d1VTRzhuOXZmb2lheCtKKzdIL0Q0Yzc2NStHejQyNEkyZjNtYjNnKzJWR1Fj?= =?utf-8?B?bEE2bFVoK1VlUHlnd0p1MllOOWpIR0hnak1sbjZzWmxQS1RVT2IvT20yUWkx?= =?utf-8?B?ZUcwbWxRODhTTytjVG1IOWhJZkNGSVc2aE9IRXBJdjg4YUx6R1hyQlVGbUpK?= =?utf-8?B?d0Y5cVhmTzluYVhvaHR1SUFxeWZESmhYdG5BTFVKUDNEYmxjbVFSTzRUL2dI?= =?utf-8?B?ekg3Y0srdElJVHdhaXpaQmNCNCs2ZDFPRTlDUGNrdHp6VmxxeUpKOG5ZY2Fj?= =?utf-8?B?dWpEbnNjSDdYczVieDlXczdUeUJzT3JtcFd5TWZxUlJlWitRQ0Q1V3l1Q3J1?= =?utf-8?B?bENmekI1UmZKYmdpc1pHR3kxcUl3cnZjalF2ZU80eXk4cUtoa0lkZTcvcjhs?= =?utf-8?B?U2pGS0NlN0hDS3Y3bzZBdGNFZFVBNFg4VDdyQjhlallNSDBIelF3Zzd1K0pR?= =?utf-8?B?STI4Mjg3RzdGaFYyanFtVEJVNUJwb1h3NUpsM2tFamxGcFNHdFhTQXQ3cTNl?= =?utf-8?B?NktwQm5iNVNmMXNxS0gwOE1LUjZRcTVLVXRHTVRQNEU2ZFhSdG81b1VQSkpW?= =?utf-8?B?eXpIMEk5Y0xCLzA4NFdFOStPaUE1K2prUUNmNkE4U1VRcmhzZjJQREVMeTVL?= =?utf-8?B?MTNPQnRLckFQNUtRa21DVVNRM3VwcEVBZ0FCWTlTY3E3STBOT0ZUVWZTNlh4?= =?utf-8?B?TWxuUnViVGxsMk1yejNyU3hZelgzZEtnOWxEZVQvU2MxclhOTTYwU3NXekN2?= =?utf-8?B?NW1PSy9SenlCakN5cDNPWVM0b1ZXWSs4ZjkwYnBJZ0tka1B6REhiclZYbVBa?= =?utf-8?B?YTdsT0FoNUpVR2MwWjB1d1QycGx3OWVObzljSUFPb1R3ZVpvNGNlaXJ2aW83?= =?utf-8?B?MXZ5S3hzKzB4aGlDT3ZsSDdGdGZBOVBvdzY3RVp4YTNuelZ1N2hyWHhVdnVV?= =?utf-8?B?dFBTSWowQVUxWFZIdnZRYUNKUkd1OFhhY2hTbWg2VjBUMk1Vc0NvbmU2ZWFL?= =?utf-8?B?Ky9SSWYrMjIvQjlWKzl1MTlGN1E0ejN1S1NQemNnZU14dGNFdGhFU1ZrTk9n?= =?utf-8?B?cGw4NDIrcWpndUVQRzVPVjJ6YjJvS04zR1g4REdBOWR5YXM4WCtOOWVtK1dG?= =?utf-8?B?OTN5NEZzaFJ6NEliSmxUT3IyRFp2empDY1VFNEQyVG5VZG93SzFJYkFadFBE?= =?utf-8?B?Q3JPdGdMMW9OM0RmTEoxaW44WjAvZWM0OWZzYnpxNFJaOERIVVVBaGliZWVX?= =?utf-8?B?SG52a0hxWVplcDN0dEk1K0xOR0wwWWZXYlZEMEJrSE43R0VhVDIxaDhKQ1BE?= =?utf-8?B?cS9UbG9ST2hyN1RDRm1MOFBGemlDd0dYYWxDY0hndmdBWWxpZkJtdWtLdHlS?= =?utf-8?B?Qk1YNTB0SThNMTcrVXNpL0ZIOVNiUWJ1ckZhbXhhdG1iVGFSRW9TVUFJblZY?= =?utf-8?B?Q1lodnpkWERzOXY4TVVhZzkzT0FhZGVqQmxUbmVIYWFwYnRWMFkyTlVKc3d3?= =?utf-8?Q?YVEiGS78I5s=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BL3PR11MB6508.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(7416014)(376014)(1800799024)(366016)(7053199007);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?OExUZHI3N01VZEZybng4NExpNVRQalI0bmxxc1dWbzN3TzVoRXVqVmFwbFBQ?= =?utf-8?B?bnlaNEtwY2o4N3lKWTFOTUdkWGhxMGNsWXhydm0wWEdLWmp6RGlhY3NaSGRZ?= =?utf-8?B?WVozNVB3U0FQYlpaTFBMUUhlR21YQmp1YWZqTDg4U2ZtbW9WWTZCQTZYaXRW?= =?utf-8?B?U2p0M1o4b3dzZXJKVFYzYXJPODZzYUtKaFRRNXZrOTNMandoc0pHNU54WTNR?= =?utf-8?B?V25IREdxemZVczdRQTVVRVBWTjVpN0Y1YkZzUGdtWXNlVzE0cUxLNnNDRm5K?= =?utf-8?B?OEpWaFltV3drNFlESEYyWkNZam1jRGNhR25Fdmw0eFN0Q0JoUVYvQ2RQL1VN?= =?utf-8?B?eU1MRlZkM3F4MDZQbU96WGJ0R1BCUjEwSnZCTWVCOUVUb0tNbFhuMlZXK3VV?= =?utf-8?B?L05SdTdqeCszM09yRlBUWjNnVjErSkhCVFRPODhmUjVuU2NPdC9DUDJJVEhm?= =?utf-8?B?bnlmeEhJSVVLcGhzQnpoRWVhZnl2OTVta3AyYitLSG1SWFliektXdnBjeTd0?= =?utf-8?B?S3RtR2NEa0l6ck4yMGk2Zmh2a3dlbGJUVnN0ZnZrYWRLbUpZMVhFNzFLMWVW?= =?utf-8?B?TXZ4dUhaTnN2Q0E0TnplMVBHaW8zNlBOeFR2L0gxM1hBTGdvSVNBSVJTeVRJ?= =?utf-8?B?VURJOS9LRjFkcXR2WnZPK0FmVkRSUnd3TTNoSzY5VE91dVFnRWkrbEtiYVFp?= =?utf-8?B?R3pVQzBmWFdtcGR5ODUwbC9sYm1tK3RrNkw5aUVlQklXT1dxUW1yY1V6M3Ur?= =?utf-8?B?RVlOK3Q3VTRzb0pDVnB0VG45eHFHamkwOGNqb2krWVZ1Y1NWUGQ2dlFpTThw?= =?utf-8?B?WnR1NmZHM1A1QVZIaSt6R1VCNzB0OUVRbFpxWTZiRHFaZHJnWVpVRmhWQmxx?= =?utf-8?B?VnBPMTQzUktnaUlPM2wrTlVVOFBkNkk4ZFBjamR3KzNYRUx5QjNWSElDV1Jl?= =?utf-8?B?ZGgxdTFJcVhqOG1EaGFSS1d4UDJFR0czRTNETGQ4dVE3NFQyNFNhV0pGeDZN?= =?utf-8?B?SktMSmJEdEZVYlh5czJxcjBoS1FYK2VtMVJxamhTR3AzamVMQzZTSTBoNzJK?= =?utf-8?B?VFhsbE9RK0ZJd1J6a0Y4L21kNTlwMklFQUF0eTVoaGYzc29sYjMzWHZSS05V?= =?utf-8?B?SzdFTit5UVJlcGxMLzZpZWw4azJkaHlndkJ6S3M4RlVqSGVjNVU5a2FKNGw2?= =?utf-8?B?VmhIQWtXWEhFaUJIQ2dMeEFxSDZIajZUU3ZoUlZENk9paGZ6d1p6VlZJVk1k?= =?utf-8?B?TE14MU03cGFROEVMY1R3R2d2cXk3OTlUZDVYdXk5Ti9Mb2hIeTVIVnFMb1c2?= =?utf-8?B?VGNRVlJOcWhCVmdpbDhTQmU3WlVCWm44cEwxOXU4QTJuT084N2pKM0hhSHVP?= =?utf-8?B?UVp3TUhLRkVmZkJLTmg2aktQT2MyVFlyWkhYV1F4bVd1cW15ZE83MWdDK1FZ?= =?utf-8?B?NlBKVWpGbHplK2t3RmdkMUlXOEF5Q21ybTd0WHVlUUNtcW4xR1VJQmVsalJt?= =?utf-8?B?ZXYyVmR2eURxMDdqc1BKbEdmR01qTkRlUE9SY0FaSHIxejR0SCtYYnNzcXFh?= =?utf-8?B?azczMXJXL1FzK3lOK0FWV2Jkem1OWWFtYVczdXFJR0x6QTZIUi9xa0dDaUpQ?= =?utf-8?B?WkhFeFlRV3A2RTR6R3cyckVEUHlMRFNveGRNZ3ppMmpGb2lETnEzdmlzczZY?= =?utf-8?B?eDlPNlBGRktaa3FIaUJ3WDliQW5FTmdaVGZ4M1ZKYmV4dk16MUhwK0tMYzBV?= =?utf-8?B?c1E5QkNpeWJJWE5uaTZWRE1XUG5zNW1rRnJOU09HUHN2Y3UvdTBySWdkOXZI?= =?utf-8?B?OERocEh5eEtDS3FUZXBGcGk1MWVmYk9uc3hEejJ1VkxKSlNDeWhXbi9NK0N0?= =?utf-8?B?N1krNTR3K0xIUW9sTlNPdlkvYW40dS9yeTlrRzRYZHdDNmtqZzN3ZjcrVkdx?= =?utf-8?B?SUk4aTg4aUlTYXRQd3pwTVFxMmorSC9McEJPWS9KVEdRWTZjb0J5WXV2dDF4?= =?utf-8?B?VjdBMHphdkhPdFFkOXNoTGxqdzhYcmVLdnFXUU83bFRCY0JQZGdFNHkzdEk0?= =?utf-8?B?YmdrTnBnSzhYck14bUJlODhaL3VzdEdFaFZuU2JKQjd6cWwvSUNJTVNKbE1O?= =?utf-8?B?SktiLzdYVnhvdzY4TjMvL1JFaHY4UjBHKzh4Q3lTTGtsNGZWOEpjWEV4Y3FH?= =?utf-8?B?Z3c9PQ==?= X-MS-Exchange-CrossTenant-Network-Message-Id: 6c7b4763-b248-4d9a-9a7d-08ddc5a90d08 X-MS-Exchange-CrossTenant-AuthSource: BL3PR11MB6508.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Jul 2025 03:13:21.8118 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: ESyGE18SpDfXEFsJzudTlT1b/4MbyCLCKYgxaYj3QmVN5gJ2KRJv+HKVqIYvG5YM1jIROyArIYbSYswBEv+tPg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA4PR11MB9204 X-OriginatorOrg: intel.com X-Rspam-User: X-Rspamd-Queue-Id: B7FAAC0002 X-Rspamd-Server: rspam06 X-Stat-Signature: gkt9inseo9yi9jk4o9ptrtqshitefgwb X-HE-Tag: 1752808411-169058 X-HE-Meta: U2FsdGVkX1/c/0ZOHGHYcJanvjrITJUBZ965DTcZXzrTB8durU+R1xGSzA4+Wbt6k/RMgJdxbItxMSCDrndRLu960EIcfwyXa16LaupCR3UDbhc/DqFbPgDG2DDfRteqWvQdoEWjgw0KJRSmpnHwg7lGmq+Z3NT/j3uVB5DwvBsxjTRNzaakZVoXI4B0GfII20/CvWB4jngkFyUlT+08k8yyAA8x3CcRS+O5qlJBnNAvMZB3eYYppWYDxi9v+F5RKoLXay5p7qTEcwQIll9Pu8Fo08eJORYPhkY8P503FO47yfhS4qsT4sfhvYEsNWi16hPjxy7i06Ffm9HQHedbZabAwogk4T2kmxDYxF5rV4gJiY2N4jUfBg/q/sMa8FRhqZmQdOM9qAMN2EbGKjViL8STf6vUT8W5RrKytLcQS13NYkwTN8v/f20YVnq847gBlLUMXHSiMPqJ3qIAAa3Y7cGRExNO4I6IL/vsSGD0J4UnOBz1vab1xFIQESdcClpAYrqv6BjkurfgAP9Maa8te7hsaHdtmEhmDj4TMawwMDvosEC73NQXOCJp4wXa57kKLD3CenWdDRlbdXTBn50oxbr4ztc3sgI3/HiNeMQXyNpThKdOaNu93C8zASK9TKsW6lmotS53MkT9K4VE2iSnBu30TQA3E6j0+r5B2w2AvqrqifkxjNamkDNuR10GjAz6x0Xjtda5b884LjGYzTCwlFgJpl0I04y/fib4ZLvUjI59ZEHGyUbqQdxvFJtmg0UBTatvVH5I6ELmpiYW5qL8T5mCGNf6ldMDBaPY9zWQNkr5Sg7N1Mwt8LUqWpdCItRMbiXxvLzSmr/el4U+Y/XGgmlhn3e8mgNLLCS3Tk7fWMsmNL6lWz4EnU5J74XxdR/epCFbv/ttlHTqgRn5S9op+VtwOLgdk+DYDUdddtJx0k+1VqsFndef+po7Tw1evo/txUe8F2rGV64JMFEUWfW xGqZY7sB GoTNRxZoZ3JcRBCCnS5mmknpSPEo7/jpYMSMQP7H8Q6dySPub0oVzZiHlx+SfFiJFn2guu91GgWjEgASVlagEyKtHbGQSA5DTUgSAYVrrFXfd/jLhiHyo5Na/x9Q+5vJK8YrjSuia4LFWvgK4I9JjSOS1zd3/hcHKC3HSKig/bKRRZ8777BXwLaYXqHkpFE81iyEar7Xmqwt/p9BHq0ezGtGNZdkNLiBQs2b1ewQAt5i7sfC9n0b2tORbrQkp7N+FYqXmjvih8/0f086Ltf4gq0prMbsfy7zpvb9Bd1MUZxz9TVsO8h5h7Z3Emimw8TcrQRhK8sMv5/4CFAR/eKx+RSnbLFfxTMTYaYRNUox9gfgTqaujQcnMHcqowRU9+RASgBIMG0Q64ilU5yzWehs/MJtQlLs6W+3jH4BliZko9UX4u468eRqtGsmet0R3l6Ua/TGZde8umpjPpwICQ3BO6po2ubJVpbtbLSPhobHXP+bSG8taoJBxSbh7tWQdWmADPkMclXUudU+3/tThp5502CVmLONzRhMWwJEXR1Hc+qIlJxwMcXSRUptwpYINP4IqzWaKbn+WYLtV4CJLsj00JHqhufYDZMJN/x179oylv54PwHrhxqLxLtCcQnhSqO1uZ3pF1c/MreisYZ44k1GPpfoNFUNPb4QDfn3Em7WqGMLJU19/bm54UE1I6jImbcaFduihLd/OrZ29ouJG3M3UiYtf1cEQma6ErNvwI+U6+szVr8txjcu9ZrEbDbSXSVeivE4qVkDR43nVC5kBk3rOkwjr57H+DxaIySsr7podUr6tBwH9EfFg9Wurjmq8diku193bxjzr+MPNDdub2mALHrI97ICAwToDlfXnfmEzfjVmYZI7Yg7CALTYP+aUNUCXHkDXJXAyptm5VeUQzXbQg/wbVTGzcfOIZXt32LWvjtoMthJ1UioT5bVn7A== 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 Fri, Jul 04, 2025 at 09:35:01AM +1000, Balbir Singh wrote: > Add flags to mark zone device migration pages. > > MIGRATE_VMA_SELECT_COMPOUND will be used to select THP pages during > migrate_vma_setup() and MIGRATE_PFN_COMPOUND will make migrating > device pages as compound pages during device pfn migration. > > Cc: Karol Herbst > Cc: Lyude Paul > Cc: Danilo Krummrich > Cc: David Airlie > Cc: Simona Vetter > Cc: "Jérôme Glisse" > Cc: Shuah Khan > Cc: David Hildenbrand > Cc: Barry Song > Cc: Baolin Wang > Cc: Ryan Roberts > Cc: Matthew Wilcox > Cc: Peter Xu > Cc: Zi Yan > Cc: Kefeng Wang > Cc: Jane Chu > Cc: Alistair Popple > Cc: Donet Tom > > Signed-off-by: Balbir Singh > --- > include/linux/migrate.h | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/include/linux/migrate.h b/include/linux/migrate.h > index aaa2114498d6..1661e2d5479a 100644 > --- a/include/linux/migrate.h > +++ b/include/linux/migrate.h > @@ -167,6 +167,7 @@ static inline int migrate_misplaced_folio(struct folio *folio, int node) > #define MIGRATE_PFN_VALID (1UL << 0) > #define MIGRATE_PFN_MIGRATE (1UL << 1) > #define MIGRATE_PFN_WRITE (1UL << 3) > +#define MIGRATE_PFN_COMPOUND (1UL << 4) Can some documentation be added around the usage of MIGRATE_PFN_COMPOUND? In particular, how the field is used in relation to the migrate_vma_* functions? For example, when MIGRATE_PFN_COMPOUND is set in a returned mpfn, the caller should check the order of the folio associated with that mpfn, and then expect the next 1 << order entries in the source array to be unpopulated. Likewise, when a caller populates an mpfn with MIGRATE_PFN_COMPOUND, the next 1 << order entries should also be unpopulated. This behavior wasn’t immediately obvious, so I think it would be helpful to document it to avoid requiring readers to reverse-engineer the code. > #define MIGRATE_PFN_SHIFT 6 > > static inline struct page *migrate_pfn_to_page(unsigned long mpfn) > @@ -185,6 +186,7 @@ enum migrate_vma_direction { Maybe out of scope, but migrate_vma_direction is not a great name. While we are here, it could be cleaned up. > MIGRATE_VMA_SELECT_SYSTEM = 1 << 0, > MIGRATE_VMA_SELECT_DEVICE_PRIVATE = 1 << 1, > MIGRATE_VMA_SELECT_DEVICE_COHERENT = 1 << 2, > + MIGRATE_VMA_SELECT_COMPOUND = 1 << 3, Same here. For example, what happens if MIGRATE_VMA_SELECT_COMPOUND is select vs unselected when higher order folio is found. Matt > }; > > struct migrate_vma { > -- > 2.49.0 >