[{"id":3633095,"web_url":"http://patchwork.ozlabs.org/comment/3633095/","msgid":"<10a8c08d-38f8-4d91-8f4e-f6140f5f260d@amd.com>","date":"2026-01-08T20:03:30","subject":"Re: [PATCH v2 01/11] mm/migrate_device: Introduce\n migrate_pfn_from_page() helper","submitter":{"id":72997,"url":"http://patchwork.ozlabs.org/api/people/72997/","name":"Kuehling, Felix","email":"Felix.Kuehling@amd.com"},"content":"On 2026-01-07 04:18, Jordan Niethe wrote:\n> To create a migrate from a given struct page, that page is first\n> converted to its pfn, before passing the pfn to migrate_pfn().\n>\n> A future change will remove device private pages from the physical\n> address space. This will mean that device private pages no longer have a\n> pfn and must be handled separately.\n>\n> Prepare for this with a new helper:\n>\n>      - migrate_pfn_from_page()\n>\n> This helper takes a struct page as parameter instead of a pfn. This will\n> allow more flexibility for handling the mpfn differently for device\n> private pages.\n>\n> Signed-off-by: Jordan Niethe <jniethe@nvidia.com>\n> ---\n> v2: New to series\n> ---\n>   arch/powerpc/kvm/book3s_hv_uvmem.c       |  2 +-\n>   drivers/gpu/drm/amd/amdkfd/kfd_migrate.c |  2 +-\n>   drivers/gpu/drm/drm_pagemap.c            |  2 +-\n>   drivers/gpu/drm/nouveau/nouveau_dmem.c   |  4 ++--\n>   include/linux/migrate.h                  |  5 +++++\n>   lib/test_hmm.c                           | 11 ++++++-----\n>   mm/migrate_device.c                      |  7 +++----\n>   7 files changed, 19 insertions(+), 14 deletions(-)\n>\n> diff --git a/arch/powerpc/kvm/book3s_hv_uvmem.c b/arch/powerpc/kvm/book3s_hv_uvmem.c\n> index e5000bef90f2..67910900af7b 100644\n> --- a/arch/powerpc/kvm/book3s_hv_uvmem.c\n> +++ b/arch/powerpc/kvm/book3s_hv_uvmem.c\n> @@ -784,7 +784,7 @@ static int kvmppc_svm_page_in(struct vm_area_struct *vma,\n>   \t\t}\n>   \t}\n>   \n> -\t*mig.dst = migrate_pfn(page_to_pfn(dpage));\n> +\t*mig.dst = migrate_pfn_from_page(dpage);\n>   \tmigrate_vma_pages(&mig);\n>   out_finalize:\n>   \tmigrate_vma_finalize(&mig);\n> diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_migrate.c b/drivers/gpu/drm/amd/amdkfd/kfd_migrate.c\n> index af53e796ea1b..ca552c34ece2 100644\n> --- a/drivers/gpu/drm/amd/amdkfd/kfd_migrate.c\n> +++ b/drivers/gpu/drm/amd/amdkfd/kfd_migrate.c\n> @@ -646,7 +646,7 @@ svm_migrate_copy_to_ram(struct amdgpu_device *adev, struct svm_range *prange,\n>   \t\tpr_debug_ratelimited(\"dma mapping dst to 0x%llx, pfn 0x%lx\\n\",\n>   \t\t\t\t     dst[i] >> PAGE_SHIFT, page_to_pfn(dpage));\n>   \n> -\t\tmigrate->dst[i] = migrate_pfn(page_to_pfn(dpage));\n> +\t\tmigrate->dst[i] = migrate_pfn_from_page(dpage);\n\nYou missed another instance of this in svm_migrate_copy_to_vram.\n\nRegards,\n   Felix\n\n\n>   \t\tj++;\n>   \t}\n>   \n> diff --git a/drivers/gpu/drm/drm_pagemap.c b/drivers/gpu/drm/drm_pagemap.c\n> index 37d7cfbbb3e8..5ddf395847ef 100644\n> --- a/drivers/gpu/drm/drm_pagemap.c\n> +++ b/drivers/gpu/drm/drm_pagemap.c\n> @@ -490,7 +490,7 @@ static int drm_pagemap_migrate_populate_ram_pfn(struct vm_area_struct *vas,\n>   \t\t\tgoto free_pages;\n>   \n>   \t\tpage = folio_page(folio, 0);\n> -\t\tmpfn[i] = migrate_pfn(page_to_pfn(page));\n> +\t\tmpfn[i] = migrate_pfn_from_page(page);\n>   \n>   next:\n>   \t\tif (page)\n> diff --git a/drivers/gpu/drm/nouveau/nouveau_dmem.c b/drivers/gpu/drm/nouveau/nouveau_dmem.c\n> index 58071652679d..a7edcdca9701 100644\n> --- a/drivers/gpu/drm/nouveau/nouveau_dmem.c\n> +++ b/drivers/gpu/drm/nouveau/nouveau_dmem.c\n> @@ -249,7 +249,7 @@ static vm_fault_t nouveau_dmem_migrate_to_ram(struct vm_fault *vmf)\n>   \t\tgoto done;\n>   \t}\n>   \n> -\targs.dst[0] = migrate_pfn(page_to_pfn(dpage));\n> +\targs.dst[0] = migrate_pfn_from_page(dpage);\n>   \tif (order)\n>   \t\targs.dst[0] |= MIGRATE_PFN_COMPOUND;\n>   \tdfolio = page_folio(dpage);\n> @@ -766,7 +766,7 @@ static unsigned long nouveau_dmem_migrate_copy_one(struct nouveau_drm *drm,\n>   \t\t((paddr >> PAGE_SHIFT) << NVIF_VMM_PFNMAP_V0_ADDR_SHIFT);\n>   \tif (src & MIGRATE_PFN_WRITE)\n>   \t\t*pfn |= NVIF_VMM_PFNMAP_V0_W;\n> -\tmpfn = migrate_pfn(page_to_pfn(dpage));\n> +\tmpfn = migrate_pfn_from_page(dpage);\n>   \tif (folio_order(page_folio(dpage)))\n>   \t\tmpfn |= MIGRATE_PFN_COMPOUND;\n>   \treturn mpfn;\n> diff --git a/include/linux/migrate.h b/include/linux/migrate.h\n> index 26ca00c325d9..d269ec1400be 100644\n> --- a/include/linux/migrate.h\n> +++ b/include/linux/migrate.h\n> @@ -140,6 +140,11 @@ static inline unsigned long migrate_pfn(unsigned long pfn)\n>   \treturn (pfn << MIGRATE_PFN_SHIFT) | MIGRATE_PFN_VALID;\n>   }\n>   \n> +static inline unsigned long migrate_pfn_from_page(struct page *page)\n> +{\n> +\treturn migrate_pfn(page_to_pfn(page));\n> +}\n> +\n>   enum migrate_vma_direction {\n>   \tMIGRATE_VMA_SELECT_SYSTEM = 1 << 0,\n>   \tMIGRATE_VMA_SELECT_DEVICE_PRIVATE = 1 << 1,\n> diff --git a/lib/test_hmm.c b/lib/test_hmm.c\n> index 8af169d3873a..7e5248404d00 100644\n> --- a/lib/test_hmm.c\n> +++ b/lib/test_hmm.c\n> @@ -727,7 +727,8 @@ static void dmirror_migrate_alloc_and_copy(struct migrate_vma *args,\n>   \t\t\t\trpage = BACKING_PAGE(dpage);\n>   \t\t\t\trpage->zone_device_data = dmirror;\n>   \n> -\t\t\t\t*dst = migrate_pfn(page_to_pfn(dpage)) | write;\n> +\t\t\t\t*dst = migrate_pfn_from_page(dpage) |\n> +\t\t\t\t       write;\n>   \t\t\t\tsrc_page = pfn_to_page(spfn + i);\n>   \n>   \t\t\t\tif (spage)\n> @@ -754,7 +755,7 @@ static void dmirror_migrate_alloc_and_copy(struct migrate_vma *args,\n>   \t\tpr_debug(\"migrating from sys to dev pfn src: 0x%lx pfn dst: 0x%lx\\n\",\n>   \t\t\t page_to_pfn(spage), page_to_pfn(dpage));\n>   \n> -\t\t*dst = migrate_pfn(page_to_pfn(dpage)) | write;\n> +\t\t*dst = migrate_pfn_from_page(dpage) | write;\n>   \n>   \t\tif (is_large) {\n>   \t\t\tint i;\n> @@ -989,7 +990,7 @@ static vm_fault_t dmirror_devmem_fault_alloc_and_copy(struct migrate_vma *args,\n>   \n>   \t\tif (dpage) {\n>   \t\t\tlock_page(dpage);\n> -\t\t\t*dst |= migrate_pfn(page_to_pfn(dpage));\n> +\t\t\t*dst |= migrate_pfn_from_page(dpage);\n>   \t\t}\n>   \n>   \t\tfor (i = 0; i < (1 << order); i++) {\n> @@ -1000,7 +1001,7 @@ static vm_fault_t dmirror_devmem_fault_alloc_and_copy(struct migrate_vma *args,\n>   \t\t\tif (!dpage && order) {\n>   \t\t\t\tdpage = alloc_page_vma(GFP_HIGHUSER_MOVABLE, args->vma, addr);\n>   \t\t\t\tlock_page(dpage);\n> -\t\t\t\tdst[i] = migrate_pfn(page_to_pfn(dpage));\n> +\t\t\t\tdst[i] = migrate_pfn_from_page(dpage);\n>   \t\t\t\tdst_page = pfn_to_page(page_to_pfn(dpage));\n>   \t\t\t\tdpage = NULL; /* For the next iteration */\n>   \t\t\t} else {\n> @@ -1412,7 +1413,7 @@ static void dmirror_device_evict_chunk(struct dmirror_chunk *chunk)\n>   \n>   \t\t/* TODO Support splitting here */\n>   \t\tlock_page(dpage);\n> -\t\tdst_pfns[i] = migrate_pfn(page_to_pfn(dpage));\n> +\t\tdst_pfns[i] = migrate_pfn_from_page(dpage);\n>   \t\tif (src_pfns[i] & MIGRATE_PFN_WRITE)\n>   \t\t\tdst_pfns[i] |= MIGRATE_PFN_WRITE;\n>   \t\tif (order)\n> diff --git a/mm/migrate_device.c b/mm/migrate_device.c\n> index 23379663b1e1..1a2067f830da 100644\n> --- a/mm/migrate_device.c\n> +++ b/mm/migrate_device.c\n> @@ -207,9 +207,8 @@ static int migrate_vma_collect_huge_pmd(pmd_t *pmdp, unsigned long start,\n>   \t\t\t.vma = walk->vma,\n>   \t\t};\n>   \n> -\t\tunsigned long pfn = page_to_pfn(folio_page(folio, 0));\n> -\n> -\t\tmigrate->src[migrate->npages] = migrate_pfn(pfn) | write\n> +\t\tmigrate->src[migrate->npages] = migrate_pfn_from_page(folio_page(folio, 0))\n> +\t\t\t\t\t\t| write\n>   \t\t\t\t\t\t| MIGRATE_PFN_MIGRATE\n>   \t\t\t\t\t\t| MIGRATE_PFN_COMPOUND;\n>   \t\tmigrate->dst[migrate->npages++] = 0;\n> @@ -328,7 +327,7 @@ static int migrate_vma_collect_pmd(pmd_t *pmdp,\n>   \t\t\t\tgoto again;\n>   \t\t\t}\n>   \n> -\t\t\tmpfn = migrate_pfn(page_to_pfn(page)) |\n> +\t\t\tmpfn = migrate_pfn_from_page(page) |\n>   \t\t\t\t\tMIGRATE_PFN_MIGRATE;\n>   \t\t\tif (softleaf_is_device_private_write(entry))\n>   \t\t\t\tmpfn |= MIGRATE_PFN_WRITE;","headers":{"Return-Path":"\n <linuxppc-dev+bounces-15426-incoming=patchwork.ozlabs.org@lists.ozlabs.org>","X-Original-To":["incoming@patchwork.ozlabs.org","linuxppc-dev@lists.ozlabs.org"],"Delivered-To":"patchwork-incoming@legolas.ozlabs.org","Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (1024-bit key;\n unprotected) header.d=amd.com header.i=@amd.com header.a=rsa-sha256\n header.s=selector1 header.b=p/MWjL2p;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=lists.ozlabs.org\n (client-ip=2404:9400:21b9:f100::1; helo=lists.ozlabs.org;\n envelope-from=linuxppc-dev+bounces-15426-incoming=patchwork.ozlabs.org@lists.ozlabs.org;\n receiver=patchwork.ozlabs.org)","lists.ozlabs.org;\n arc=pass smtp.remote-ip=40.107.201.39 arc.chain=microsoft.com","lists.ozlabs.org;\n dmarc=pass (p=quarantine dis=none) header.from=amd.com","lists.ozlabs.org;\n\tdkim=pass (1024-bit key;\n unprotected) header.d=amd.com header.i=@amd.com header.a=rsa-sha256\n header.s=selector1 header.b=p/MWjL2p;\n\tdkim-atps=neutral","lists.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=amd.com\n (client-ip=40.107.201.39; helo=ch4pr04cu002.outbound.protection.outlook.com;\n envelope-from=felix.kuehling@amd.com; receiver=lists.ozlabs.org)","dkim=none (message not signed)\n header.d=none;dmarc=none action=none header.from=amd.com;"],"Received":["from lists.ozlabs.org (lists.ozlabs.org\n [IPv6:2404:9400:21b9:f100::1])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4dnG812MzCz1xqD\n\tfor <incoming@patchwork.ozlabs.org>; Fri, 09 Jan 2026 07:04:16 +1100 (AEDT)","from boromir.ozlabs.org (localhost [127.0.0.1])\n\tby lists.ozlabs.org (Postfix) with ESMTP id 4dnG7z5x9jz2yFn;\n\tFri, 09 Jan 2026 07:04:15 +1100 (AEDT)","from CH4PR04CU002.outbound.protection.outlook.com\n (mail-northcentralusazon11013039.outbound.protection.outlook.com\n [40.107.201.39])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange secp256r1 server-signature RSA-PSS (2048 bits) server-digest\n SHA256)\n\t(No client certificate requested)\n\tby lists.ozlabs.org (Postfix) with ESMTPS id 4dnG7y57xTz2xpt\n\tfor <linuxppc-dev@lists.ozlabs.org>; Fri, 09 Jan 2026 07:04:14 +1100 (AEDT)","from BN9PR12MB5115.namprd12.prod.outlook.com (2603:10b6:408:118::14)\n by SN7PR12MB7204.namprd12.prod.outlook.com (2603:10b6:806:2ab::7) with\n Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9499.2; Thu, 8 Jan\n 2026 20:03:33 +0000","from BN9PR12MB5115.namprd12.prod.outlook.com\n ([fe80::9269:317f:e85:cf81]) by BN9PR12MB5115.namprd12.prod.outlook.com\n ([fe80::9269:317f:e85:cf81%7]) with mapi id 15.20.9499.003; Thu, 8 Jan 2026\n 20:03:33 +0000"],"ARC-Seal":["i=2; a=rsa-sha256; d=lists.ozlabs.org; s=201707; t=1767902655;\n\tcv=pass;\n b=dbZqgwddooWxFxUB6G86cokSNRCS4q6ePnPH3m/1ILPoFwvnMG5uAcO2qY5wvqUZj6vmHe77bAYvpDG23I4GONfJVZbB2w5owBXS0q+TSQksBNbq4iRImVuumB2lK+3vN8AeLMZE0rNTs4mfuTzEtmXcAChf0H9zgJxQr4P7WvkfkHywjYXuU2eTTWgOuQtl6ef0+fRSvG6E0uT+0iz4kcgiTHXl2xTSOkdH1Sh1hYBs0nXJCUTGcmW2RzsObsTn21gn0EtvcR20MmWhCPYIB+EczBJVG2yuyMg+thdFiRLH34kEJhauNf2qVgIJE7wP9tQl97Yc8+gILmSayfxDsA==","i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none;\n b=XA9lTcfS8WFwCpKNfJPQ4ZK0F3K/WSW8Ld7cbdMKlGOz6OFsjkVO9IvK1z9jywFo4F5KYgDh8zVtpl256jUOyId/4MIHhdTk2Z/tqCma4r28BA5HWoAy2qDbTlnKhJRcOy8d6v/ODWNuIklk9ydbQGy7odcg90cxkHb4UdlT+cY1C8wiXePakSLEqNCFew71rh4+TldkwqdfN8zgdfX6efZD/HE5T9aekNkXOC3xEPJ5cpCMx9M3y9Ew65fVH9RwpF8kqanqZ1Dz/qZ0pdljKo+Q+UzzWmrUVIkmNBfdxM7b8/SHrUIwGBh1p7UknDWSJs1aw76DPya2JWyaSBddkg=="],"ARC-Message-Signature":["i=2; a=rsa-sha256; d=lists.ozlabs.org; s=201707;\n\tt=1767902655; c=relaxed/relaxed;\n\tbh=3LZUFWLwBui+1fvJ5LFIOPM3cn/aPYtbj1KClKPdtx0=;\n\th=Message-ID:Date:Subject:To:Cc:References:From:In-Reply-To:\n\t Content-Type:MIME-Version;\n b=NYfzQy7h9nXsM6jJ2ppj5Ptd+cEsDNuoQ1Vgnuni5Ka3JqD9OSBKIX5BE2DOwvYezOczgX7a9y4egG1/ZJjGanUOntH5JkKePxwPJ8j7BazUCxW1C34iiueHi/zWQF6KXtyX2nAm7lGiUg5rD0bOW2y8PLL/acgoM+QTT0V4ZCePHdfZKXT3QuFneN7mam8RWHALd64xLBaiLMglCsMhax1f0MmLKXMOKe4HRc4yoON2ia/dr7bzFSt/zV4LWQ2q630XYS1H/L1uT1Y6/hddG1nGRL1OQyPXgdspiXzdk/Tr4FnFq8FOCDswq4DozLinT7x3ngy5k87l+COz0+aeOg==","i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;\n s=arcselector10001;\n 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;\n bh=3LZUFWLwBui+1fvJ5LFIOPM3cn/aPYtbj1KClKPdtx0=;\n b=ilu70kuPE8FJQWzHyIV1qdFsDaJKYWxDcSNNaol51d+NKNZp5gsCmjLf6qZElAKovReKxUMWKnztMX8PXYwRm1GDPsxtGlZ6Ygw7ounGoRV9YxTM6vYrm/umoeBSkrGP9G4o5+RLVUtpWLQxkAmK9lIxYH4L77RXYY+teFnF7pZqwcXZn5D5Q3bQZT3l53bZW6d38HErAds4IfO4WPGA7q/KXtt7AF7QYX5cuPxLOn/CfSUe3rDzHRcvoW3nbjP+xochuFaxvRo9yoKIcTa4atcu/BzYIPhqCd5eqg53cFNqjPs28tREQ8YWd1LV1ADLxH1FoH5WsLgYg42gYNuTWQ=="],"ARC-Authentication-Results":["i=2; lists.ozlabs.org;\n dmarc=pass (p=quarantine dis=none) header.from=amd.com;\n dkim=pass (1024-bit key;\n unprotected) header.d=amd.com header.i=@amd.com header.a=rsa-sha256\n header.s=selector1 header.b=p/MWjL2p; dkim-atps=neutral;\n spf=pass (client-ip=40.107.201.39;\n helo=ch4pr04cu002.outbound.protection.outlook.com;\n envelope-from=felix.kuehling@amd.com;\n receiver=lists.ozlabs.org) smtp.mailfrom=amd.com","i=1; mx.microsoft.com 1; spf=pass\n smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass\n header.d=amd.com; arc=none"],"DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n bh=3LZUFWLwBui+1fvJ5LFIOPM3cn/aPYtbj1KClKPdtx0=;\n b=p/MWjL2p2lTp2CLWB5ejo0dC+0nLagN2x3Xi3ZSqUzoYI9NB1l/cTVcT1zAAJYogg/+T0oNGAZAtKhSo+XjtIAMcFHU52Oyo1WDCNdA0mIhh2nOlF75oFsNtum7whuVSsfPGj8AX2ypAFxNVXDvbYKx5LXDdU58Fk0Yf5+nw4vE=","Message-ID":"<10a8c08d-38f8-4d91-8f4e-f6140f5f260d@amd.com>","Date":"Thu, 8 Jan 2026 15:03:30 -0500","User-Agent":"Mozilla Thunderbird","Subject":"Re: [PATCH v2 01/11] mm/migrate_device: Introduce\n migrate_pfn_from_page() helper","To":"Jordan Niethe <jniethe@nvidia.com>, linux-mm@kvack.org","Cc":"balbirs@nvidia.com, matthew.brost@intel.com, akpm@linux-foundation.org,\n linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org,\n david@redhat.com, ziy@nvidia.com, apopple@nvidia.com,\n lorenzo.stoakes@oracle.com, lyude@redhat.com, dakr@kernel.org,\n airlied@gmail.com, simona@ffwll.ch, rcampbell@nvidia.com,\n mpenttil@redhat.com, jgg@nvidia.com, willy@infradead.org,\n linuxppc-dev@lists.ozlabs.org, intel-xe@lists.freedesktop.org, jgg@ziepe.ca","References":"<20260107091823.68974-1-jniethe@nvidia.com>\n <20260107091823.68974-2-jniethe@nvidia.com>","Content-Language":"en-US","From":"Felix Kuehling <felix.kuehling@amd.com>","Organization":"AMD Inc.","In-Reply-To":"<20260107091823.68974-2-jniethe@nvidia.com>","Content-Type":"text/plain; charset=UTF-8; format=flowed","Content-Transfer-Encoding":"8bit","X-ClientProxiedBy":"YQBPR01CA0037.CANPRD01.PROD.OUTLOOK.COM\n (2603:10b6:c01:2::9) To BN9PR12MB5115.namprd12.prod.outlook.com\n (2603:10b6:408:118::14)","X-Mailing-List":"linuxppc-dev@lists.ozlabs.org","List-Id":"<linuxppc-dev.lists.ozlabs.org>","List-Help":"<mailto:linuxppc-dev+help@lists.ozlabs.org>","List-Owner":"<mailto:linuxppc-dev+owner@lists.ozlabs.org>","List-Post":"<mailto:linuxppc-dev@lists.ozlabs.org>","List-Archive":"<https://lore.kernel.org/linuxppc-dev/>,\n  <https://lists.ozlabs.org/pipermail/linuxppc-dev/>","List-Subscribe":"<mailto:linuxppc-dev+subscribe@lists.ozlabs.org>,\n  <mailto:linuxppc-dev+subscribe-digest@lists.ozlabs.org>,\n  <mailto:linuxppc-dev+subscribe-nomail@lists.ozlabs.org>","List-Unsubscribe":"<mailto:linuxppc-dev+unsubscribe@lists.ozlabs.org>","Precedence":"list","MIME-Version":"1.0","X-MS-PublicTrafficType":"Email","X-MS-TrafficTypeDiagnostic":"BN9PR12MB5115:EE_|SN7PR12MB7204:EE_","X-MS-Office365-Filtering-Correlation-Id":"497b5969-5918-45d1-4602-08de4ef10045","X-MS-Exchange-SenderADCheck":"1","X-MS-Exchange-AntiSpam-Relay":"0","X-Microsoft-Antispam":"\n\tBCL:0;ARA:13230040|376014|1800799024|366016|7416014|7053199007;","X-Microsoft-Antispam-Message-Info":"=?utf-8?q?l+Lrm27QaX/S4ZpTSST+8dC0NJXeBCt?=\n\t=?utf-8?q?r3zwWxDtQgtTApSx+tW7nKDmFB5Y4PvjrojKp7FFAfZyRZUiZl4WOGS7gHVu8Z8wu?=\n\t=?utf-8?q?UiqR+wLHetgQZql0kGFxtOvtGeC6MBdCriy/ILZz3zBpXXI9GeozCOV8QSbhd0Dsl?=\n\t=?utf-8?q?KCG5VrGLSB1p6clvubr7i2VTpghBCqKgcf0C7QGSmMOrU5nM6RGjMrGcEO3RN7App?=\n\t=?utf-8?q?BumcdUbKe5mH567ExSyykM7VJmxqo0actAKPX0nGg+zBwl9M7Jx4K7rlZOoxNy/BG?=\n\t=?utf-8?q?Zmkdo3XKxTXKO9AH5B+6hJszaw/CNLvDJmxQuD5TbRiBEsnfK/SDlyrVyUa0d2fza?=\n\t=?utf-8?q?6+zvs7GNviCl51h1s7o4CDBrvZ7u+IaiAhcqLUr8F718s5uLRh6jQClCfALWUVOqZ?=\n\t=?utf-8?q?FHoqWlsP0Q5X3Bgcx3LStIM8fWJNJKuVDhMsMmdVxSNF5qZ+ekb6HL/nJwqEZoDTV?=\n\t=?utf-8?q?yUWJvgVQRkqG0yV68Fy2ibKIyeS9JHaIf8LFEAXe4vFxdYBg44sZtFaDJDs1uEzJV?=\n\t=?utf-8?q?z9fzu2GUFXvXoOgRtne0NmcAqqk1b8xBEPWmbmACCqW1LFHRVnm2oMBaIPn4atTkZ?=\n\t=?utf-8?q?8/qC3TDlDhxmu+hEZ1IN1IrUoqYZAAg2q+P8kspAuEj8j1GbVJVJ5QIapDxzIdFqR?=\n\t=?utf-8?q?yAjpVcnBB5tJXeQSmMUB3ShNcbWGgYWDaOvyv1nZ6gMx/cTEuRijw5iBd5WNkk1ZH?=\n\t=?utf-8?q?+7kASbJfH6MkjQBEBXnOQPzCFSZSlhV0fcTLjMUCHIHdCUdeTTQVkvgUgGpyqPtiF?=\n\t=?utf-8?q?eQWNhLhyBoLinjvh4MWtN8IlCOqdtN7tdd9tZAoj3gdhbTWctB0+JcLhSoXRws9vI?=\n\t=?utf-8?q?WKHvQQQMG8GR1x8fs6xrR08xOB1Dp4l7LK02NbC/Du0fSFHTsdqLaE16Ld8HsbIXm?=\n\t=?utf-8?q?qX9hfoiEPek9mCoMkOuiBdSTXh68QmXtWs/CDYnKpUlKew9+whAbN1dJGJ3zS2fKD?=\n\t=?utf-8?q?Iix8Es9vRO/KjnuAUWsBOMRpvG2MacsLkpjr2+PdR3ARKON09ZFPKth4gZctWGXU2?=\n\t=?utf-8?q?lQGlDgaHd+V9zuytd7gXy50/3c/6jNMAGztEQgdLwFk3M1Zxx1GWjxACoPQ3v1gX0?=\n\t=?utf-8?q?VlrqGDEsYmwYhqfpcAeRYDgrDj5V2mlx75LVEKNRRKjmC9B0cKPA7AWCVPYiXrD+c?=\n\t=?utf-8?q?rO6HNClbwfS47NNt7bcMBQqrKoIa1rWIXQsaW0jaHhEEDfQgz7nOdl2T3126JHSVc?=\n\t=?utf-8?q?bQcS2Qi9m6qDcFfzKj6DNiRm1O4np5H9mL6SfBcFe6KcfziP/nX9Deg7tbOXQLBAA?=\n\t=?utf-8?q?NlgReM0gmCYc3l450KK44UBKLKQi58hRH7c/HIWZF6PWrh7G8t/zfRIyw/ZSozK6Q?=\n\t=?utf-8?q?eRv0hkxE5KVcpqMvcPWtpTdzsRB9rmtuLtiPZ6X8S7ectWuhEnr+ifvvKrHO8eD+F?=\n\t=?utf-8?q?ARpBK2g75+K?=","X-Forefront-Antispam-Report":"\n\tCIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BN9PR12MB5115.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(376014)(1800799024)(366016)(7416014)(7053199007);DIR:OUT;SFP:1101;","X-MS-Exchange-AntiSpam-MessageData-ChunkCount":"1","X-MS-Exchange-AntiSpam-MessageData-0":"=?utf-8?q?uNA2oM690T8xQf2XWvDjcBwhPEYy?=\n\t=?utf-8?q?zHorurq4YBYoGujeBauOkMFoUggbkWmFUYJ74Emd5u/s+07r1ICSWAPu1VmMbHnjU?=\n\t=?utf-8?q?2CJwkNhUSz5/tBUwgqsint58x5bGS3jtXRkKv7CI+JVkUP/cqbk+tS9Aepq1JXCaw?=\n\t=?utf-8?q?WHcpeolbpKWPCj+dMqOf2FLfR0/F4LoW4dq2tgWu5CVN4yHx34BzgQiyr9UGsgyqO?=\n\t=?utf-8?q?GvxrPKXAJDt1G9ladYL2zpQM8nrXSeVO8dvJLbjr75yOsygtotPmsBOZv+U5aOW3U?=\n\t=?utf-8?q?c3A74YP05Jhk49gygXbJ9KvRMJIciQHIzpOsc97f/HXfyK2fzuTIc3bDtIEzFk24x?=\n\t=?utf-8?q?sYvLaX7lJQo4q+sUE/6iWJ/oXDdYmIuh1OWrbDP2+t3mR7IiDhwZjpfrSfkpbYmeO?=\n\t=?utf-8?q?jNqzDuRI4bSskDZlqhejj98FRpBNLVcqEuZHc+P3FVdIT+2BsC6rnE18kHGIdbu8K?=\n\t=?utf-8?q?/nyiraH4cldrOOOFHJYMRTDtx9lgX2qz3oSnL2ePlVQEdHWGbbJs8//jL/fef6N4I?=\n\t=?utf-8?q?wJaXpNgXDaIY9PD3wsj+ELK7JWMp6hGRb1mcX55lHTq5R6r7b6LUR7X4oVUNFvLpQ?=\n\t=?utf-8?q?enaHq6Kb9DJ+9NEr1bSflXCoX9dkagEAeDo1Ux2zHIQexchf1YoTg8oi7ZSu/cZ/s?=\n\t=?utf-8?q?4mFQJu3O9pL6Uc+Q9gi/adGUugg3v+PzFGRBXFEfTIHe5ca7iCPfqGiZ4L+BTipg0?=\n\t=?utf-8?q?XkDk4akmA5AWXfIbEGjEM59IxMwgoOGAncoLmso0pN3phrDquVtW8sVEeo2J/eea7?=\n\t=?utf-8?q?TMfoWavcNOf3Zs+3IrMQbnP0g1SONL3a+HmrqChQqktfjAG/T4HzdldnZUW3S4LmE?=\n\t=?utf-8?q?rkBQ4Dcoh3thB4g9hkx/hdX5ogiRhSBiddkgDQylRYbc5Fw3g6kPDOlOory27hCy0?=\n\t=?utf-8?q?siNDjDAPE0JNkGkU+Nw0c9FxszNnzn466QGyjAE3IvrzIFNfh5PS3WfGM3jx00h+e?=\n\t=?utf-8?q?NxuaF8Ln9BaxX4rHwbRl0udknJTU6nEeWfzyYY471uEfVawO6gOv+fhVDs/VOzxxL?=\n\t=?utf-8?q?JCWqSUlRu3i9L24F7m3l1bO9vdMYq+maSveafNVT+7KpDcjaegzDSMwDpTQXbhLnz?=\n\t=?utf-8?q?l0doZeQ8yCRqL9Ym9/aG6hfajxvWIi0Xr+E3WCWec1HGOF9AIUKcfbi/4gJ0k5O/+?=\n\t=?utf-8?q?QQ8zgGZkt4iNE7XU/UaaZPPQ4coI7e1QhK/OvXCil095CdJvyUry7mgOOdiYys/1M?=\n\t=?utf-8?q?OeSD4pIWP+XVdnm9tlwXgDHaeOJj3ylIyOkIzTWMeZiYlrOM5Wp2LfIHI1NG13ED/?=\n\t=?utf-8?q?G3OsTGGoQglqcLfeE/VmCos6xJRPePyVWMsdIuwIMNzlAcwXYyEmt31Hsz12yFHeV?=\n\t=?utf-8?q?dmV4IohLo/Zm9uU8UuOC0+4XEimE3v/KYsYBWmNKXe0I46e8lARMPGIz77hxJ/FxG?=\n\t=?utf-8?q?PwvawjQSG8YHF1+iH2cVEE2Fv3Ulccoqzy7k2IhYajKVQ4tr4jes6pQInZpqCQ6ua?=\n\t=?utf-8?q?dHOXUPTqYZf9COQmcmEFCJFKEs1QnYfoxON18V/U3CYcNpQ1ZMIoqdL6LEEZo4qWc?=\n\t=?utf-8?q?ZtWiylSBDopyJ1LCNetbJry2Rt9yDn5PCAR4uGpteYlE8Zz4dKJHh4au5DlE37r3f?=\n\t=?utf-8?q?zG5xYf1jrYE58IfY3Ci5tVimuHalmuXErPJaagySwArfxo69e59srvx2xhs4At3CO?=\n\t=?utf-8?q?OCKPORaIwYDxhc0x0E4wKsoqauCJutJA=3D=3D?=","X-OriginatorOrg":"amd.com","X-MS-Exchange-CrossTenant-Network-Message-Id":"\n 497b5969-5918-45d1-4602-08de4ef10045","X-MS-Exchange-CrossTenant-AuthSource":"BN9PR12MB5115.namprd12.prod.outlook.com","X-MS-Exchange-CrossTenant-AuthAs":"Internal","X-MS-Exchange-CrossTenant-OriginalArrivalTime":"08 Jan 2026 20:03:33.3021\n (UTC)","X-MS-Exchange-CrossTenant-FromEntityHeader":"Hosted","X-MS-Exchange-CrossTenant-Id":"3dd8961f-e488-4e60-8e11-a82d994e183d","X-MS-Exchange-CrossTenant-MailboxType":"HOSTED","X-MS-Exchange-CrossTenant-UserPrincipalName":"\n 9S4AYtZMQldzIJPDD7oBzfqfWhBD5c7TBlt6jHcdj4rAixOs08RSZaNlDYlNP+KpwXm/xmiw97T4O41d/E66Ig==","X-MS-Exchange-Transport-CrossTenantHeadersStamped":"SN7PR12MB7204","X-Spam-Status":"No, score=-0.2 required=3.0 tests=ARC_SIGNED,ARC_VALID,\n\tDKIMWL_WL_HIGH,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,\n\tRCVD_IN_MSPIKE_H2,SPF_HELO_PASS,SPF_PASS autolearn=disabled\n\tversion=4.0.1 OzLabs 8","X-Spam-Checker-Version":"SpamAssassin 4.0.1 (2024-03-25) on lists.ozlabs.org"}},{"id":3633224,"web_url":"http://patchwork.ozlabs.org/comment/3633224/","msgid":"<ebc909f1-ab70-4659-b037-bb82806fa159@nvidia.com>","date":"2026-01-08T23:49:32","subject":"Re: [PATCH v2 01/11] mm/migrate_device: Introduce\n migrate_pfn_from_page() helper","submitter":{"id":92354,"url":"http://patchwork.ozlabs.org/api/people/92354/","name":"Jordan Niethe","email":"jniethe@nvidia.com"},"content":"Hi,\n\nOn 9/1/26 07:03, Felix Kuehling wrote:\n> \n>> @@ -646,7 +646,7 @@ svm_migrate_copy_to_ram(struct amdgpu_device \n>> *adev, struct svm_range *prange,\n>>           pr_debug_ratelimited(\"dma mapping dst to 0x%llx, pfn 0x%lx\\n\",\n>>                        dst[i] >> PAGE_SHIFT, page_to_pfn(dpage));\n>> -        migrate->dst[i] = migrate_pfn(page_to_pfn(dpage));\n>> +        migrate->dst[i] = migrate_pfn_from_page(dpage);\n> \n> You missed another instance of this in svm_migrate_copy_to_vram.\n\nI might be missing something, but is there call to migrate_pfn() in\nsvm_migrate_copy_to_vram()?  I'm seeing svm_migrate_copy_to_vram() calls\nsvm_migrate_addr_to_mpfn() - that should be handled already.\n\nThanks for reviewing,\nJordan.\n\n> \n> Regards,\n>    Felix\n> \n>","headers":{"Return-Path":"\n <linuxppc-dev+bounces-15439-incoming=patchwork.ozlabs.org@lists.ozlabs.org>","X-Original-To":["incoming@patchwork.ozlabs.org","linuxppc-dev@lists.ozlabs.org"],"Delivered-To":"patchwork-incoming@legolas.ozlabs.org","Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=Nvidia.com header.i=@Nvidia.com header.a=rsa-sha256\n header.s=selector2 header.b=JNTaFpqZ;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=lists.ozlabs.org\n (client-ip=112.213.38.117; helo=lists.ozlabs.org;\n envelope-from=linuxppc-dev+bounces-15439-incoming=patchwork.ozlabs.org@lists.ozlabs.org;\n receiver=patchwork.ozlabs.org)","lists.ozlabs.org;\n arc=pass smtp.remote-ip=52.101.43.6 arc.chain=microsoft.com","lists.ozlabs.org;\n dmarc=pass (p=reject dis=none) header.from=nvidia.com","lists.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=Nvidia.com header.i=@Nvidia.com header.a=rsa-sha256\n header.s=selector2 header.b=JNTaFpqZ;\n\tdkim-atps=neutral","lists.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=nvidia.com\n (client-ip=52.101.43.6; helo=sj2pr03cu001.outbound.protection.outlook.com;\n envelope-from=jniethe@nvidia.com; receiver=lists.ozlabs.org)","dkim=none (message not signed)\n header.d=none;dmarc=none action=none header.from=nvidia.com;"],"Received":["from lists.ozlabs.org (lists.ozlabs.org [112.213.38.117])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519 server-signature ECDSA (secp384r1 raw public key)\n server-digest SHA384)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4dnM8w34Pmz1xpk\n\tfor <incoming@patchwork.ozlabs.org>; Fri, 09 Jan 2026 10:50:24 +1100 (AEDT)","from boromir.ozlabs.org (localhost [127.0.0.1])\n\tby lists.ozlabs.org (Postfix) with ESMTP id 4dnM8v3gc9z2yFg;\n\tFri, 09 Jan 2026 10:50:23 +1100 (AEDT)","from SJ2PR03CU001.outbound.protection.outlook.com\n (mail-westusazon11012006.outbound.protection.outlook.com [52.101.43.6])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange secp256r1 server-signature RSA-PSS (2048 bits) server-digest\n SHA256)\n\t(No client certificate requested)\n\tby lists.ozlabs.org (Postfix) with ESMTPS id 4dnM8t58Qbz2y6G\n\tfor <linuxppc-dev@lists.ozlabs.org>; Fri, 09 Jan 2026 10:50:22 +1100 (AEDT)","from DM4PR12MB9072.namprd12.prod.outlook.com (2603:10b6:8:be::6) by\n MW4PR12MB6803.namprd12.prod.outlook.com (2603:10b6:303:20e::10) with\n Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9499.2; Thu, 8 Jan\n 2026 23:49:41 +0000","from DM4PR12MB9072.namprd12.prod.outlook.com\n ([fe80::9e49:782:8e98:1ff1]) by DM4PR12MB9072.namprd12.prod.outlook.com\n ([fe80::9e49:782:8e98:1ff1%5]) with mapi id 15.20.9499.002; Thu, 8 Jan 2026\n 23:49:41 +0000"],"ARC-Seal":["i=2; a=rsa-sha256; d=lists.ozlabs.org; s=201707; t=1767916223;\n\tcv=pass;\n b=H8gWwzqPJESYJDrADJuktEU5vjKaszqGJPtb08xT0yXelZ8MA+2lcU3a9rlt9aL+JIIMzwfo6KI6O9q1DDxQw0PhWpGkvmOPPIg0/h9iRTu8Uh+UAD/KvfqXAIe5s1zdVWJx6rXLaG3plz+seGYZ0vX3j8qlEiNlEBzKOuzW+IG/xo5TDlGFhgOV1yvWsvN89tbnsVZ2ctO2ANnCcPXSA0BpxqqR0Ckv18xt9NGoSp0JH8hvVgXt6BKT4kf+f/P+0dbcRbw0cBMmUcDdlvGIR8XIRZaWgGYTKoTDcg2JDb6fIO7O0unR+ubTV1rnnO3cTgZ5KQCsU5iH4Mfj7sYYtg==","i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none;\n b=IARncsd7hxd591d6QKVP8mdf4EKjOnesw51WK2DzXSccZwK+R65I5TUFocYxcuaxd5kodyR7lkoREo3t6VW15rhLTKuHGLaFbTHiGLUM9/xBlH1N3haiHDJ6Awr7ZmvAq2h7un06h5FgIg8SUpUO1w8vaWNrLzuUuBAkSLWs7YzgVlWR/IxnTl1BzfxjzDPDqNXF4q3RN1vjOtEmTqE9zjIA+IAxMQKxYvKgDBuo/wZSjwQv9WZsaIfdzc5O+uPsV76bAMpiCbtj7b4mnmZoDLZtp+ZeKy5c4lhTSA1Xec2RXn4idR3uK0N7LKtp8NBCElii4yR8e/pKJTYaNbCWmg=="],"ARC-Message-Signature":["i=2; a=rsa-sha256; d=lists.ozlabs.org; s=201707;\n\tt=1767916223; c=relaxed/relaxed;\n\tbh=xMY4fbuyYWH5PKtdaDlF1Z2O4id+OapRDb/JDmXLU/s=;\n\th=Message-ID:Date:Subject:To:Cc:References:From:In-Reply-To:\n\t Content-Type:MIME-Version;\n b=WIjHq+gAJQ2zEDmzmS7668aZtjdf2lD7koGg4az5K7q7MBBHDITc3KTvaD9WxGHHXU96gDyxhFMFl8XFXjwKiMiZ9hAeB/YV70GXbm+B1pXFRkQ8A9hKv86M/nHrbqxn9qBW4ODfDEqv1Uu2Y1PrI1CS6S3XRHDhEzGKDemWlY360ZX7jozpuPSXMJZ13l6bLTZr+qp4MYBr6iiv2tF1iiltso5r4UhywaK/V5WM+5aRfOGVxACicr4JlWykgWv5+/7wTIsQyuB4+7ndcASX0Dje4t3uiHCbr55flkaFtlSruY9X74UNOnSbUbKQKdv5L1OcurmButaU1Iu/Tp+DYw==","i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;\n s=arcselector10001;\n 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;\n bh=xMY4fbuyYWH5PKtdaDlF1Z2O4id+OapRDb/JDmXLU/s=;\n b=vqcHMw8ZmEu5u1Mp6AV1/T8T53Xc2SN+YJt7jF/NdndXUnk2BB6Z+vGMYBeEJ75esSqDxgELc28qy24Xe2KCn4z+Ve70GkGNq34ZpWfBCt1cQyyKm9DuxHeZl17dhSMWa2QPPS0k32q/j/8gUzDQODoeE18F9L5BmfTzGTon/NWaEwvRsh/i6aZf8pKpATD5whgAKh2WpqiJ85ApX0FKOsM0S218bkrDUzEWGG7f9vlJuAd/NSaR8D0+kiwDMfUWYHFkZ3Vn2bii3hwoCkibll5XrggwWBDgM3NyvpgIwvsqvytGZolNuVSVIxvcqSqXg6YbNtJShX/NwQkiiBOk/w=="],"ARC-Authentication-Results":["i=2; lists.ozlabs.org;\n dmarc=pass (p=reject dis=none) header.from=nvidia.com;\n dkim=pass (2048-bit key;\n unprotected) header.d=Nvidia.com header.i=@Nvidia.com header.a=rsa-sha256\n header.s=selector2 header.b=JNTaFpqZ; dkim-atps=neutral;\n spf=pass (client-ip=52.101.43.6;\n helo=sj2pr03cu001.outbound.protection.outlook.com;\n envelope-from=jniethe@nvidia.com;\n receiver=lists.ozlabs.org) smtp.mailfrom=nvidia.com","i=1; mx.microsoft.com 1; spf=pass\n smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com;\n dkim=pass header.d=nvidia.com; arc=none"],"DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com;\n s=selector2;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n bh=xMY4fbuyYWH5PKtdaDlF1Z2O4id+OapRDb/JDmXLU/s=;\n b=JNTaFpqZl0JiXa7IsdaMLtFfucukQorvlDcmCpqje/UR+LLgO+mgSjIoiUgyySZMRtMs/iGdW50ux7So6S4/88gTua2yonZociVhJPNAE4pzGU8Bx6Hksjga7QZEib2ys3JL3a9rY0/Uift3aQV0x1NS8SgMY/4i08Wm512kC5hAxEp0g2ZmYRZHQ5zctK3SFV3UUhUileiEXGnu2y2uCRhDSwIq9zX9sM/yOy5ovyNF3e4gVTbBBTJcrF/gGZk2ZV/J/OQdQEusGgnuphZWGARgoiCptTetjtQkap4OEUOiaLWB+NBClV6CRFsCGpHT8Tq74Y6+/SCWHEIEXvWU4g==","Message-ID":"<ebc909f1-ab70-4659-b037-bb82806fa159@nvidia.com>","Date":"Fri, 9 Jan 2026 10:49:32 +1100","User-Agent":"Mozilla Thunderbird","Subject":"Re: [PATCH v2 01/11] mm/migrate_device: Introduce\n migrate_pfn_from_page() helper","To":"Felix Kuehling <felix.kuehling@amd.com>, linux-mm@kvack.org","Cc":"balbirs@nvidia.com, matthew.brost@intel.com, akpm@linux-foundation.org,\n linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org,\n david@redhat.com, ziy@nvidia.com, apopple@nvidia.com,\n lorenzo.stoakes@oracle.com, lyude@redhat.com, dakr@kernel.org,\n airlied@gmail.com, simona@ffwll.ch, rcampbell@nvidia.com,\n mpenttil@redhat.com, jgg@nvidia.com, willy@infradead.org,\n linuxppc-dev@lists.ozlabs.org, intel-xe@lists.freedesktop.org, jgg@ziepe.ca","References":"<20260107091823.68974-1-jniethe@nvidia.com>\n <20260107091823.68974-2-jniethe@nvidia.com>\n <10a8c08d-38f8-4d91-8f4e-f6140f5f260d@amd.com>","Content-Language":"en-US","From":"Jordan Niethe <jniethe@nvidia.com>","In-Reply-To":"<10a8c08d-38f8-4d91-8f4e-f6140f5f260d@amd.com>","Content-Type":"text/plain; charset=UTF-8; format=flowed","Content-Transfer-Encoding":"8bit","X-ClientProxiedBy":"SY5P282CA0039.AUSP282.PROD.OUTLOOK.COM\n (2603:10c6:10:206::17) To DM4PR12MB9072.namprd12.prod.outlook.com\n (2603:10b6:8:be::6)","X-Mailing-List":"linuxppc-dev@lists.ozlabs.org","List-Id":"<linuxppc-dev.lists.ozlabs.org>","List-Help":"<mailto:linuxppc-dev+help@lists.ozlabs.org>","List-Owner":"<mailto:linuxppc-dev+owner@lists.ozlabs.org>","List-Post":"<mailto:linuxppc-dev@lists.ozlabs.org>","List-Archive":"<https://lore.kernel.org/linuxppc-dev/>,\n  <https://lists.ozlabs.org/pipermail/linuxppc-dev/>","List-Subscribe":"<mailto:linuxppc-dev+subscribe@lists.ozlabs.org>,\n  <mailto:linuxppc-dev+subscribe-digest@lists.ozlabs.org>,\n  <mailto:linuxppc-dev+subscribe-nomail@lists.ozlabs.org>","List-Unsubscribe":"<mailto:linuxppc-dev+unsubscribe@lists.ozlabs.org>","Precedence":"list","MIME-Version":"1.0","X-MS-PublicTrafficType":"Email","X-MS-TrafficTypeDiagnostic":"DM4PR12MB9072:EE_|MW4PR12MB6803:EE_","X-MS-Office365-Filtering-Correlation-Id":"443d0c54-ad85-430d-ecca-08de4f109766","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?q?GC6mF91tldJvwuvMPW9ndkPXryFLJ75?=\n\t=?utf-8?q?OIZJqZMRww+92D1I18MuebG9+WStS96/CdhXwBp/9IfXtBGopZb8/01C0giI1yPQn?=\n\t=?utf-8?q?rZbKh0ScWuRsedFHMfDvlvcuJ42+NUhVVl4Np5rcps+ZLq9ebaZzuZqQ1MCNBPLoY?=\n\t=?utf-8?q?BZz4nCxngRd+Pm+FwONZgx08pSB1GYq9+SoJK+QSG62GViij0YtT+cZgyGFJeMQTQ?=\n\t=?utf-8?q?tmagJ3m+HTAO27xI9ovZTGd0Zr3fwXbQQAmhEvi3BnUWJPUNMz+ms7tQcBGs3cE9r?=\n\t=?utf-8?q?iSI2micPdf3PyceN/3OnIDFZz5Hmn09JyKKZ5QZa0T1pasfad+akSl3s9k6Lnxzhs?=\n\t=?utf-8?q?ho/DqAZA8csIizIZ3hNG1xf92Eu1dHm4VeHjm3vYlQ5/tGoAP/wyObKTMJImHjvD9?=\n\t=?utf-8?q?FVb05zHqBsRl5MnBmH8As768GOLdgFZ9j4oYBMhuqgXLNmtboruqcgMphtErF5gsd?=\n\t=?utf-8?q?raNwxA/pA7kLKImDM1IFifcGTHlnoZ0kfIV8F07qHLI1IvvPQ5gUbIb4afpX0L9/I?=\n\t=?utf-8?q?HsWqFi6ENqK+PGSeS5VQyk5nqLfDPA8zdIMT6/AseuCPNGV23sEPzo8dQCqMu48Vh?=\n\t=?utf-8?q?9AH9ZlfO1pAIM4c//sQA5STO0xLoD4feBK4kw0/uIwOy4j/CR9uAYtY9hwdtv9FFt?=\n\t=?utf-8?q?Ae+UhD7QVuzAno8PiurPa7r/sT0d568falkAMQA8XM7cTDPKnWRXxuFn1niOZC/75?=\n\t=?utf-8?q?/V+c50EjzDsI7MVD44wGtgL0cGxqHr9HvGTbkbTfywtITyI1vzJdahogPOMfennPs?=\n\t=?utf-8?q?aVq2W57Ds2nfq2CZKWNWFCI44/ml2fruk9ALlC6uTB4cXvIapjwf+QVj6BlxMm+Of?=\n\t=?utf-8?q?925jEqs2MDSVKOcZgZ3X9tq2DRM79xsB4YudchPXwSxGPGOQo4upYnqBjuVeVpdMj?=\n\t=?utf-8?q?eqtoaptS3VMuBqpVuM75bg5LEHX+7M2G35QnHqMZb6va6166lxaBOrGCvuo8Fxs6P?=\n\t=?utf-8?q?OuwdMqfMt27wdn3AZk3HwPIKnXDPdsnPq7Jr7Ufp//JZL1c722zTpS8j8nLTu9z/B?=\n\t=?utf-8?q?SOrO208d7rUTjPj4wbBee+DMwqUf0BbkLlsbiG1JSUjjfGhRYRKKWR7vEy4yJsW+1?=\n\t=?utf-8?q?0wlNv3CxZPFH/Kv2yJGiGHM/p7Ab9aPn7H23kDPxF4XN//JZ7irglFKRECzQg9jQO?=\n\t=?utf-8?q?yLhOh1hzbOYd/gxsLMGvxwkQrrL5mtdcmhhtACo3KeitjQDjHlWVtFtZqdKwb+U2d?=\n\t=?utf-8?q?Ukbk2RjaC36QMdKsfaVmVvcfg6BeXLwna9hWt/45zNc2FBhlNbJrCtxLb4Mo26/Ys?=\n\t=?utf-8?q?rcHrWXyuGPgeTroa11YpsGpe//zgX5BLXFWUSEhSaCx+oJk0p7sibj3FyryvHpJIQ?=\n\t=?utf-8?q?M2kBMsFtVeIiZpslPkol8HgKvcHl2dkW7rgaPNgtF9y7I3EpE69f1q1mFONDYP7A5?=\n\t=?utf-8?q?KRYC5XKFp4O?=","X-Forefront-Antispam-Report":"\n\tCIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM4PR12MB9072.namprd12.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?q?z+ySGdaab77pBVu0Nk9WrmwQ7u9U?=\n\t=?utf-8?q?nYRzZUXahj3D4ok6Ojnodxd8tTV7VGUaGiUcnOt0ZougmvtePxddJjir46K9/C6rW?=\n\t=?utf-8?q?QEx0lDexwDFuEQcHZ0iy8awdJH/bhU1u8Tipyludi/zqYuS7iFXJcULuE4Y07Zqhp?=\n\t=?utf-8?q?t9sCCCXv+G+JEB/Mgj21nC1/jWMX7bIabagtziXoR441aYOKUovQYlWJE9/HiOnk4?=\n\t=?utf-8?q?6nqymwjSj57yFGOLYNv2+mXZCLt2G0B6UVAUNRjQ6Fxt7dqRyA6JJeKVUx6cABP9q?=\n\t=?utf-8?q?S2IZZgPrCF0mUdfgRfkIieEZ6UHvXKLsUF7hu14Nkd2VxQzK+iIlhy5TEH71RnCEP?=\n\t=?utf-8?q?ZSUzdODA11+46Te7VBJNme2xaJFBBSpseqeBEzkKSeP9IICIVuVUdZmiaQW081c1K?=\n\t=?utf-8?q?MnPhAbsJGp4Ul4+iiwuYphxzN//YwQK9m0/F1gsDGwQZQgCnYEM9XIGHePcGe8nRm?=\n\t=?utf-8?q?3i1RgMvosB287QwDueorNxn88xysXyTB0AJzHeULoM53ZNbI+XUSP7dpoQCSQ6GWf?=\n\t=?utf-8?q?DfWOuCRjfHb8u7scz8PCiqjA0xdgmOkauzXQfGE9UQkLf3eteYyVk9cQrf4wM+EaJ?=\n\t=?utf-8?q?uXSl5uwikWN9PB3+uRW8nbcZ4nF6WbPVxy4b+v3+EDqZ+t8ZqgRmIpRwy/6X1E+MS?=\n\t=?utf-8?q?AcO6K1r5btCxS8rKRWYoDxtiAJmh9WSjO6MbWle86v9LJap6hz36FrXSMFVmHV8pr?=\n\t=?utf-8?q?zTkB7naOlZIBkgUZo9b5TXYGOUq+lmE6T94psfJeX69Sd97CDgVA0EAMWc07HRBRL?=\n\t=?utf-8?q?g43ziPBmIhna9FGMEtzmnhy82mcSbwz7xsltdRDgSfQKxRJUgJrc87/H0QDEzWauw?=\n\t=?utf-8?q?xlEUItqPWPHqY3Z3O6EN9rHNVFPcYFtHRUmU5fXkuSqbXuGmjRIAjotuYCEN1aymu?=\n\t=?utf-8?q?gy6ogpn38ZnPeI3JyfbHyO6uVcoJuk94IlfAwrYUuj9KSA914tJdpRDNnyw5vjoif?=\n\t=?utf-8?q?PevvGWDTEEB9MpT370LMxJFlN3ghhqqer+yJ4BNbtzjySRJqSKKPAlO7cyBZ8hmWT?=\n\t=?utf-8?q?oKCwxdDU2i68VfWtgyyx/I8KAGkf19j1lUvx+CBY6WavGHS5eGJpzmUdfY3K9EwF8?=\n\t=?utf-8?q?wgLTlNYmmkrlYmz4ZaHjwRDOXweuTKAqAQjv3V6yOAQ0rOL8mf+CTEPh9Ofd23nzs?=\n\t=?utf-8?q?aB1IzxQ6rxum6OIN2CgYWD7WvoqDGQ/Y83IwY8OmqR6+x/jcUogVzHnSpe7wWUVTn?=\n\t=?utf-8?q?1z8+PjuxVEFCkF4M2U/vwKCC7WCmIeed49ozj/K1L3bxHU7K6InP91RmZBesSde7C?=\n\t=?utf-8?q?6jYvF8hRcYhxLgcdWPArYVfeXX+NR3vXvaeCFwUwOuZpgVYCrooZKPaHhkNHG7IFk?=\n\t=?utf-8?q?pSorc8ODcjmthY5LDq+Q4iTcCH7yzUkon4M8bmi1qVaQV8b8Hi+crM4oGWNBeFlxY?=\n\t=?utf-8?q?2P1SQTT+EsIcUU10NQkg/Mog3a9LTwqX+X5q3NSIzZWIbU+CoPVc95lkS9wWqkPLJ?=\n\t=?utf-8?q?Zxb/8oeLZtxIo3dqPom2MDBWY95UaAijjN4RW5ANXn0lk/pX99ixHDizGMythhfMo?=\n\t=?utf-8?q?dNB1ni3y1HCnF91V+tqQ0c0g2wBPRWMTHzP7+8+VCgSl+3JJGmU3QZjlAozxTVnKd?=\n\t=?utf-8?q?sPo1JH/UV+5o4QT3YPo7mdSgTp5AnLvflwUw4tamgw4TmLMOqjpd1dz01/3y8crwo?=\n\t=?utf-8?q?YXte2Weu+bAB4tauxLufIOM6bHt2iPYA=3D=3D?=","X-OriginatorOrg":"Nvidia.com","X-MS-Exchange-CrossTenant-Network-Message-Id":"\n 443d0c54-ad85-430d-ecca-08de4f109766","X-MS-Exchange-CrossTenant-AuthSource":"DM4PR12MB9072.namprd12.prod.outlook.com","X-MS-Exchange-CrossTenant-AuthAs":"Internal","X-MS-Exchange-CrossTenant-OriginalArrivalTime":"08 Jan 2026 23:49:41.4226\n (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":"\n YqnR12TqYCoUToscxP6+RYeeB+Yush/9el8Jzbp+CXTkrxpjAwEhiqkiWNIJaN7VgtdlmaVs88ij4ImyYasB6Q==","X-MS-Exchange-Transport-CrossTenantHeadersStamped":"MW4PR12MB6803","X-Spam-Status":"No, score=-0.2 required=3.0 tests=ARC_SIGNED,ARC_VALID,\n\tDKIMWL_WL_HIGH,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,\n\tRCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_PASS,SPF_PASS\n\tautolearn=disabled version=4.0.1 OzLabs 8","X-Spam-Checker-Version":"SpamAssassin 4.0.1 (2024-03-25) on lists.ozlabs.org"}},{"id":3633838,"web_url":"http://patchwork.ozlabs.org/comment/3633838/","msgid":"<3334cea8-dbaf-4dce-8b6f-e22350f642b2@amd.com>","date":"2026-01-09T21:03:59","subject":"Re: [PATCH v2 01/11] mm/migrate_device: Introduce\n migrate_pfn_from_page() helper","submitter":{"id":72997,"url":"http://patchwork.ozlabs.org/api/people/72997/","name":"Kuehling, Felix","email":"Felix.Kuehling@amd.com"},"content":"On 2026-01-08 18:49, Jordan Niethe wrote:\n> Hi,\n>\n> On 9/1/26 07:03, Felix Kuehling wrote:\n>>\n>>> @@ -646,7 +646,7 @@ svm_migrate_copy_to_ram(struct amdgpu_device \n>>> *adev, struct svm_range *prange,\n>>>           pr_debug_ratelimited(\"dma mapping dst to 0x%llx, pfn \n>>> 0x%lx\\n\",\n>>>                        dst[i] >> PAGE_SHIFT, page_to_pfn(dpage));\n>>> -        migrate->dst[i] = migrate_pfn(page_to_pfn(dpage));\n>>> +        migrate->dst[i] = migrate_pfn_from_page(dpage);\n>>\n>> You missed another instance of this in svm_migrate_copy_to_vram.\n>\n> I might be missing something, but is there call to migrate_pfn() in\n> svm_migrate_copy_to_vram()? \n\nI see what's happening. You removed that call in patch 2. Never mind.\n\nRegards,\n   Felix\n\n\n> I'm seeing svm_migrate_copy_to_vram() calls\n> svm_migrate_addr_to_mpfn() - that should be handled already.\n>\n> Thanks for reviewing,\n> Jordan.\n>\n>>\n>> Regards,\n>>    Felix\n>>\n>>","headers":{"Return-Path":"\n <linuxppc-dev+bounces-15480-incoming=patchwork.ozlabs.org@lists.ozlabs.org>","X-Original-To":["incoming@patchwork.ozlabs.org","linuxppc-dev@lists.ozlabs.org"],"Delivered-To":"patchwork-incoming@legolas.ozlabs.org","Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (1024-bit key;\n unprotected) header.d=amd.com header.i=@amd.com header.a=rsa-sha256\n header.s=selector1 header.b=2Iqn0nWe;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=lists.ozlabs.org\n (client-ip=2404:9400:21b9:f100::1; helo=lists.ozlabs.org;\n envelope-from=linuxppc-dev+bounces-15480-incoming=patchwork.ozlabs.org@lists.ozlabs.org;\n receiver=patchwork.ozlabs.org)","lists.ozlabs.org;\n arc=pass smtp.remote-ip=52.101.193.52 arc.chain=microsoft.com","lists.ozlabs.org;\n dmarc=pass (p=quarantine dis=none) header.from=amd.com","lists.ozlabs.org;\n\tdkim=pass (1024-bit key;\n unprotected) header.d=amd.com header.i=@amd.com header.a=rsa-sha256\n header.s=selector1 header.b=2Iqn0nWe;\n\tdkim-atps=neutral","lists.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=amd.com\n (client-ip=52.101.193.52; helo=ch1pr05cu001.outbound.protection.outlook.com;\n envelope-from=felix.kuehling@amd.com; receiver=lists.ozlabs.org)","dkim=none (message not signed)\n header.d=none;dmarc=none action=none header.from=amd.com;"],"Received":["from lists.ozlabs.org (lists.ozlabs.org\n [IPv6:2404:9400:21b9:f100::1])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519 server-signature ECDSA (secp384r1 raw public key)\n server-digest SHA384)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4dnvRX2wggz1xqr\n\tfor <incoming@patchwork.ozlabs.org>; Sat, 10 Jan 2026 08:04:55 +1100 (AEDT)","from boromir.ozlabs.org (localhost [127.0.0.1])\n\tby lists.ozlabs.org (Postfix) with ESMTP id 4dnvRP6kDLz2xGY;\n\tSat, 10 Jan 2026 08:04:49 +1100 (AEDT)","from CH1PR05CU001.outbound.protection.outlook.com\n (mail-northcentralusazon11010052.outbound.protection.outlook.com\n [52.101.193.52])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange secp256r1 server-signature RSA-PSS (2048 bits) server-digest\n SHA256)\n\t(No client certificate requested)\n\tby lists.ozlabs.org (Postfix) with ESMTPS id 4dnvRN0Q5rz2x9M\n\tfor <linuxppc-dev@lists.ozlabs.org>; Sat, 10 Jan 2026 08:04:46 +1100 (AEDT)","from BN9PR12MB5115.namprd12.prod.outlook.com (2603:10b6:408:118::14)\n by IA0PR12MB7649.namprd12.prod.outlook.com (2603:10b6:208:437::17) with\n Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9499.4; Fri, 9 Jan\n 2026 21:04:03 +0000","from BN9PR12MB5115.namprd12.prod.outlook.com\n ([fe80::9269:317f:e85:cf81]) by BN9PR12MB5115.namprd12.prod.outlook.com\n ([fe80::9269:317f:e85:cf81%7]) with mapi id 15.20.9499.004; Fri, 9 Jan 2026\n 21:04:02 +0000"],"ARC-Seal":["i=2; a=rsa-sha256; d=lists.ozlabs.org; s=201707; t=1767992689;\n\tcv=pass;\n b=RGxloW/OjhYxKG0zzebJAK4ynCNK3f1Gha7K2W2tjN+7wlE5EVnhbafnWxBi6H3Ux0/aM/r5W7dNYJjj35ydxupqop/zalqWia3qM37y2ZEp8/l6NNSIRkZaHp0m3r+D+6EUfSWIM/2yAWhs9TtBOhw5QyaiMXD6e4dNP0eripXQPlkI7S91F65ljNYxVpCrYaIiG2LkvLlU7NLpitJxK7JbDmrzv8ef3Pr3pwTVUhgMFSS37p7+8tP0SB2nGrVXmE8DeBzSnkQQzdsdPVRTdKJifkEYnd2QPVykdvAx0dw08cr+k2ip5aLhEFMn9k5Z5dLS+Rrvo9UUie7DMAl0SQ==","i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none;\n b=GuBdyDosKNpyoafZpgVZ14yUIEP0rD9XmnzTB9UrnQgNlUP9nz5fp52XyBmxEw3r0hKZ3HsVkQ8p92Xwx2jEDQzfrm2a5hec7mSaDlmylPaSpICl4rTvjJBJ3umFLWnxdBxI8mLNTz/5Qh2P0dGtNfSSLtAHZHnWn7T2Ytpu6U6sfDsN4QAlR5jOhqiijrOUh4cGX90TD092Ex9UiOGAuBi9OaBKPLBIYfPqyTHYq5IVY9Zd8Qv1VneVhy+E28ggEIY8OjrMqn2NveSCiCnkB4GFW2Sz7YTYxL+E6Nt52sKPJxgoEVeQTT15KUs9OHPiCGcIDpKqjuGCifSTlOxQcQ=="],"ARC-Message-Signature":["i=2; a=rsa-sha256; d=lists.ozlabs.org; s=201707;\n\tt=1767992689; c=relaxed/relaxed;\n\tbh=987WG82/4fdgilMdN2ubVOrpRs2w7yq7m26XNRwtGH8=;\n\th=Message-ID:Date:Subject:To:Cc:References:From:In-Reply-To:\n\t Content-Type:MIME-Version;\n b=avdLZcRTcOuDYX9feNG3lnUVJqgxg1HAvUcDlQJwXd4YGeJQWJVIIzcBQaOGwddIW8imn/LB4twIqTfNP9HhWZkhvWdTir06inrNnVwJCwWdde5N8d0Xh/2bqsokPSyi4+jVDc2LTDqBSoDspw70P4ZyMrhTj872yO0heBC3DcH/7R1EIf3JwVBKX5tMqZhveOyD5GDmTiRfgvIJ5hN4iPbjojtEi/0EHc5LkA9YjTQ72Vm4XNplMGsMyCstc1ODDVJq6T8aN6TY40ozdiNeMynuwwuwSoYWxp4KLxYpFI/qUxOT6lpNe1TeVAEF6Cof+rLV2JBSqgUmXrY6vDxuCA==","i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;\n s=arcselector10001;\n 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;\n bh=987WG82/4fdgilMdN2ubVOrpRs2w7yq7m26XNRwtGH8=;\n b=Sm3/QkkzJ1YtgyZzMG8zQIeWPEUy/zIuypkH+gSMt9B3b00LYZFy7cQjoiKknBqz+I4l6VdwLp+2K68M+Gtc68O6duvt8TSgJZni8yh3/EnR313BHwnqhWju2epbUBN78Og9uo3sI1NLrH6NwRC8kpAbrbY4hFwAKMeNFtmTbzIJ33BzzOFWviw3dH1/neaRt3fu2gPGAZP+HBY0xX5Z7kgp8KfQ4Nzf5YSuKkCLvl7sOJl4VnikUj/vsn5xxyBdYmmZMCdVj2XOz8QIM8316LuydZpYKzzjTDsDJoO6dOd5j9JUJ5VMHAByw7TfOKPP68KNGx9jqTzr6euID6yQ2g=="],"ARC-Authentication-Results":["i=2; lists.ozlabs.org;\n dmarc=pass (p=quarantine dis=none) header.from=amd.com;\n dkim=pass (1024-bit key;\n unprotected) header.d=amd.com header.i=@amd.com header.a=rsa-sha256\n header.s=selector1 header.b=2Iqn0nWe; dkim-atps=neutral;\n spf=pass (client-ip=52.101.193.52;\n helo=ch1pr05cu001.outbound.protection.outlook.com;\n envelope-from=felix.kuehling@amd.com;\n receiver=lists.ozlabs.org) smtp.mailfrom=amd.com","i=1; mx.microsoft.com 1; spf=pass\n smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass\n header.d=amd.com; arc=none"],"DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n bh=987WG82/4fdgilMdN2ubVOrpRs2w7yq7m26XNRwtGH8=;\n b=2Iqn0nWez6B39EBMzfT8gdmzd/jawMA+sRT9pX2Gwq2WpT5xeZ9fAyOVi29DNT9quc2Jhhh0XJJmwdZ08Y3qG4D/gSZ/E65ZFTyRYjZ/GeTFdPw1uZ7qx/8pCHEqTOm0HmbW5lAeERrG1yMFqwoZ+o4d6EWizce9myjXUC0AtMM=","Message-ID":"<3334cea8-dbaf-4dce-8b6f-e22350f642b2@amd.com>","Date":"Fri, 9 Jan 2026 16:03:59 -0500","User-Agent":"Mozilla Thunderbird","Subject":"Re: [PATCH v2 01/11] mm/migrate_device: Introduce\n migrate_pfn_from_page() helper","To":"Jordan Niethe <jniethe@nvidia.com>, linux-mm@kvack.org","Cc":"balbirs@nvidia.com, matthew.brost@intel.com, akpm@linux-foundation.org,\n linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org,\n david@redhat.com, ziy@nvidia.com, apopple@nvidia.com,\n lorenzo.stoakes@oracle.com, lyude@redhat.com, dakr@kernel.org,\n airlied@gmail.com, simona@ffwll.ch, rcampbell@nvidia.com,\n mpenttil@redhat.com, jgg@nvidia.com, willy@infradead.org,\n linuxppc-dev@lists.ozlabs.org, intel-xe@lists.freedesktop.org, jgg@ziepe.ca","References":"<20260107091823.68974-1-jniethe@nvidia.com>\n <20260107091823.68974-2-jniethe@nvidia.com>\n <10a8c08d-38f8-4d91-8f4e-f6140f5f260d@amd.com>\n <ebc909f1-ab70-4659-b037-bb82806fa159@nvidia.com>","Content-Language":"en-US","From":"\"Kuehling, Felix\" <felix.kuehling@amd.com>","In-Reply-To":"<ebc909f1-ab70-4659-b037-bb82806fa159@nvidia.com>","Content-Type":"text/plain; charset=UTF-8; format=flowed","Content-Transfer-Encoding":"8bit","X-ClientProxiedBy":"YT4PR01CA0205.CANPRD01.PROD.OUTLOOK.COM\n (2603:10b6:b01:ad::27) To BN9PR12MB5115.namprd12.prod.outlook.com\n (2603:10b6:408:118::14)","X-Mailing-List":"linuxppc-dev@lists.ozlabs.org","List-Id":"<linuxppc-dev.lists.ozlabs.org>","List-Help":"<mailto:linuxppc-dev+help@lists.ozlabs.org>","List-Owner":"<mailto:linuxppc-dev+owner@lists.ozlabs.org>","List-Post":"<mailto:linuxppc-dev@lists.ozlabs.org>","List-Archive":"<https://lore.kernel.org/linuxppc-dev/>,\n  <https://lists.ozlabs.org/pipermail/linuxppc-dev/>","List-Subscribe":"<mailto:linuxppc-dev+subscribe@lists.ozlabs.org>,\n  <mailto:linuxppc-dev+subscribe-digest@lists.ozlabs.org>,\n  <mailto:linuxppc-dev+subscribe-nomail@lists.ozlabs.org>","List-Unsubscribe":"<mailto:linuxppc-dev+unsubscribe@lists.ozlabs.org>","Precedence":"list","MIME-Version":"1.0","X-MS-PublicTrafficType":"Email","X-MS-TrafficTypeDiagnostic":"BN9PR12MB5115:EE_|IA0PR12MB7649:EE_","X-MS-Office365-Filtering-Correlation-Id":"492c87db-ab9f-407d-cdd2-08de4fc29d7a","X-MS-Exchange-SenderADCheck":"1","X-MS-Exchange-AntiSpam-Relay":"0","X-Microsoft-Antispam":"BCL:0;ARA:13230040|7416014|376014|1800799024|366016;","X-Microsoft-Antispam-Message-Info":"=?utf-8?q?a0rRp9pNVIrl0N9EjPsrgCvBBXx0o2S?=\n\t=?utf-8?q?S68J2zoZR37+HeSfcbvjIhqjpB6H9sBLa3yXgVMJ0xahLGRKpu2nlvYX3UfDdRQw5?=\n\t=?utf-8?q?g/MOOen6d7j8RVihLzMsN1SZbCit3dhWEDiE0l2XCCh9qGlIo1sv0FrG/TlKUCBGr?=\n\t=?utf-8?q?Q7V3bw2/6DpK4+46beZV9fSm2AfhVCEshuDhZ+kDHJkOqElHxfA7ayRiP9vgNueuR?=\n\t=?utf-8?q?T/DgearQ2xTeErddHm143x8Eh+4r2lCVf9esWzxerx1txGjSt43R+IcZJ2vfh643Q?=\n\t=?utf-8?q?jSEyWYmzJz9h0Eog1X1EPkbokYAt5M5zforGcwm/qXIQem+MsKhTe6spz5qODkcPW?=\n\t=?utf-8?q?+/Wvtvuz9MmbZKmYU0owCgY1S5+uFa+e4BhmBKODRrhqsf33nFMXpaP6tUabB+fdX?=\n\t=?utf-8?q?YNgYp8esDU+JKtGHDdZmFZLnGXG+As1gTgAR7KOxqpMyU0hNM0mDXOD818mCg7mtJ?=\n\t=?utf-8?q?7A8ImaH4Owf1dWmyPNO+3UD1llSuTTh2W5EsjgnNJF5ex0o1rWcygaBrecXetBpHt?=\n\t=?utf-8?q?CY6uhlFnYytK2hNNpOVxPYzheZa5N96OMQzSWQ98KCSBYUwiRs/wvsRP157nWwebN?=\n\t=?utf-8?q?bg0irc/W9cnY1r3hDC4uy7JbD7rMZZDtEBYgv9ss7ecNwd3pAuMTXuL5p/98zrMBT?=\n\t=?utf-8?q?yk8pO8TAuDrMIUmZ80UU/aSDMM9IzD2NOoo4ugvna3MSGQYknj49DehuVv3xZ6vLQ?=\n\t=?utf-8?q?o5vyFhaqgtj117kL0cIEdxcrnfjJIHI4kwC+GBtDiDg/hMBFdCBVJYN5NYG5DVXhG?=\n\t=?utf-8?q?Nj2et5jDUlqTWpRPbG5xtL6B0+HAaHJOZAxGiN480k1YpmzISwDo2iUJt32fpXibR?=\n\t=?utf-8?q?mDBJoXTXNF8I3TtBPL8abdGetmtB83p7L4JcIUm6BXvyczLCsCLqlkLizXu7SeRd0?=\n\t=?utf-8?q?TA6282btHhQlhBDrhzarw8R4w3mEoKtPDiojCD/DKVDWg+kpHvPMW0lZQac4jlLAc?=\n\t=?utf-8?q?LbWb2DFgdYPBCepzEd8qjTy1pKxhBodv9cLDJDm706kunYBCJBzyVZC95DW/ZYsff?=\n\t=?utf-8?q?SZrCurBrjhmO+Kdw5sWjzzBAo3eBIslBbkVHMcQRXxFsKFjycT4Lk1h8rlkG0t3C/?=\n\t=?utf-8?q?89sXPrifsSV5kR3h/dDEBmdpuyMxftS3pQLYjqwGmO4zrjEX2bnAa2WCkOHCCD7b3?=\n\t=?utf-8?q?JHX+AbED3ZwGsHMCVRa8t+VXf27nBiLSmP3U6/+VlQ/0jLMuCCDZJ0vRKN/pSIzlB?=\n\t=?utf-8?q?zcDB1rvQCRuWRgJsTmsaIyrVKrTt1UzGrO7mRgjUS+dbQVXXV6mlnH5NrO4MFVkln?=\n\t=?utf-8?q?Y6cez7Fj4CCe9c4GyilpEUDjpPdNggVCF14irWjFUvFl1nYukB3WcEcjrtg0UD9tx?=\n\t=?utf-8?q?oBwvpwnus66h+wvLtcyPTCUmSXOrT6CLjWcv8vltTltU9+wIhs2Akvz/BlJQWY6p5?=\n\t=?utf-8?q?VXDna56minm?=","X-Forefront-Antispam-Report":"\n\tCIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BN9PR12MB5115.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(7416014)(376014)(1800799024)(366016);DIR:OUT;SFP:1101;","X-MS-Exchange-AntiSpam-MessageData-ChunkCount":"1","X-MS-Exchange-AntiSpam-MessageData-0":"=?utf-8?q?drBhBQehqy0rb7SIMDf/Ys5zmnBa?=\n\t=?utf-8?q?tLpwD0Vyo4tCBAFoEb2H+5rLrmmNDJtyhe5sSgwIo+GKwiR9WjEe7Y+/1x4eGlLl0?=\n\t=?utf-8?q?VfPna2+fVswU72FZTnMyUF9KflGQXvY5z9137daCJRomyrfw9XDd0FQMPHrXooAXL?=\n\t=?utf-8?q?KtvVj7oCai1ifQgtZidKE+LuYOKMNTB6+0zBNN8ggu2JmFaOU4EA2fR38QDWWwSrs?=\n\t=?utf-8?q?4Ta5HfIsh4e/knxPbBIABHN8hyR98kJ89vQXGKGSSFGk2XgEADE1Y1rwsygNLCCzo?=\n\t=?utf-8?q?pJTtkqIt0M/y//MY5QB2Jvcumo/CqnWkSA4AwTWEHqu+pKD5VmcO54kOL27Lso3QO?=\n\t=?utf-8?q?mACHorCFk4NYLYvmwXIUOTRCnUdH8OmWmAT4XC111eUIOyB9oAISZx+47SgUo2EmA?=\n\t=?utf-8?q?fQ1m2Aiwoo0t4D6eCe+s75mWfAtGQ5eFmyB2oNq02eLs5QRtYez5S5xbIGI1cw9dJ?=\n\t=?utf-8?q?Hn7NUCuCv4EwniPQ+N+PFMKHNa4zTnpRMvAEuXHBoTmiTEwlNIU7GcJM7m5ikPZco?=\n\t=?utf-8?q?NGdqhI5XgU0nu/7yA242H/dDeIoTh6FJC6h7A9BdhVtQVzb/F6T9pQuDdyhYhq2Ap?=\n\t=?utf-8?q?tIDMEAIycXLmO/MQTfYWVqKzPViWiESw/Pc55CNlBdXVURddydjdOTufUt1i+czqk?=\n\t=?utf-8?q?aKZjDY5jXWAReL9ROdM9gF5bDUAsBeneMwssFIZQJdgN6e97iTyuKoTHvN2oQoolG?=\n\t=?utf-8?q?1qSwn9RG/dJOzLolz4n6ttAn6M4lVJ6HMP2BjjudYrcLIOP7WJLTfF0HF6E0REmwJ?=\n\t=?utf-8?q?VtSa/+pA0NSu9PihQxW7U9ym3gEzRWjE+IBaxCgcke1o3nMjQuDju5/3w/52jsOZz?=\n\t=?utf-8?q?SnIFe1yjWucrUFHvqKHFurNdg9oZkRZ0jHGKnHQjk48p6PTmR+cuGdXLF5uJ5tgAY?=\n\t=?utf-8?q?oVME09XClpeYvXWWfwzu/1ZgZXROcstLqrKGtQ3rjt6rxcjZ8HVy94FYBCfxghtjx?=\n\t=?utf-8?q?5YOEYGJ6pkIzCi8pOVMUQ0ogQfVrjPL/vZorToJMpa9eWPDEL64bcuHD0rbGG+JFU?=\n\t=?utf-8?q?oqWMNE7gjGYx09yGT2C367fRS71rbm/9sOCsaftIPAdH8zTlJEgGJnM3ddPvuigFM?=\n\t=?utf-8?q?+W6V5Ewt5H3EpNyeE7rNU18NuURH6tE2DBYtMZQQndR10Tij/wLUnWX4svcRJKbe4?=\n\t=?utf-8?q?6XPtghKdtFSlFGxUsmtR4qvjYGNJTsGodEMfL90ZOj0Yd0yggkScdG0pGDqkSLrKF?=\n\t=?utf-8?q?BQtX6LzYi9Z7kCf5q/PFtyiwU9aTj3+NMLoJ49ZyF3X3SdyWDLfitSAwp7MzcIY2I?=\n\t=?utf-8?q?Mn7ebx9KMWXN/RoIXy29N2IIWygBdrMDW8IhT8T3skcUZ+Fq7VQxUpM1T2xk5ocrI?=\n\t=?utf-8?q?pqF361NDAFtryMbmWI7HaC5qfXkgKj4kBI2DGRnKtoCLVhn31skbsts+58tFlI+jD?=\n\t=?utf-8?q?wfYxDnG5DAO39vqL1RoEOug8Xu4qHTsapk1BdSnUjAxCbN6MIVLb93F1gB1tPrj6f?=\n\t=?utf-8?q?mgYi4CVuqtAUmNsHYjTwrYjnZIMWmtBSRfbqe653JeMI3ehwkRRX12hJWzeHQ+44n?=\n\t=?utf-8?q?OWP9olcZcWAq0MI5zNUHvfEp0MUUBeBg9zwbfd9FKc21W3TuTg86LeGGPGON+Bxgg?=\n\t=?utf-8?q?6TCB3p/xpgpD2cayqWGjn7/fG5d9MAUq4e0tyNCq6yFcfKobLF6rxIdB6lOhaCY6s?=\n\t=?utf-8?q?/nWNXPhxIBsEoe2PkIk+8P/tFB1o1Neg=3D=3D?=","X-OriginatorOrg":"amd.com","X-MS-Exchange-CrossTenant-Network-Message-Id":"\n 492c87db-ab9f-407d-cdd2-08de4fc29d7a","X-MS-Exchange-CrossTenant-AuthSource":"BN9PR12MB5115.namprd12.prod.outlook.com","X-MS-Exchange-CrossTenant-AuthAs":"Internal","X-MS-Exchange-CrossTenant-OriginalArrivalTime":"09 Jan 2026 21:04:01.9331\n (UTC)","X-MS-Exchange-CrossTenant-FromEntityHeader":"Hosted","X-MS-Exchange-CrossTenant-Id":"3dd8961f-e488-4e60-8e11-a82d994e183d","X-MS-Exchange-CrossTenant-MailboxType":"HOSTED","X-MS-Exchange-CrossTenant-UserPrincipalName":"\n QGTQzawwGC3XTiwOXQ8Ty75V+NhLKKoFLKNL05+Djd5gcrhK10VIWdVWVHZR4Ed1VDZzvHb4uy5HSVNlF+/pTQ==","X-MS-Exchange-Transport-CrossTenantHeadersStamped":"IA0PR12MB7649","X-Spam-Status":"No, score=-0.2 required=3.0 tests=ARC_SIGNED,ARC_VALID,\n\tDKIMWL_WL_HIGH,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,\n\tRCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_PASS,SPF_PASS\n\tautolearn=disabled version=4.0.1 OzLabs 8","X-Spam-Checker-Version":"SpamAssassin 4.0.1 (2024-03-25) on lists.ozlabs.org"}},{"id":3633891,"web_url":"http://patchwork.ozlabs.org/comment/3633891/","msgid":"<85cebb34-5034-4c2c-bd8b-d636224e39ee@nvidia.com>","date":"2026-01-09T22:47:50","subject":"Re: [PATCH v2 01/11] mm/migrate_device: Introduce\n migrate_pfn_from_page() helper","submitter":{"id":90215,"url":"http://patchwork.ozlabs.org/api/people/90215/","name":"Balbir Singh","email":"balbirs@nvidia.com"},"content":"On 1/7/26 19:18, Jordan Niethe wrote:\n> To create a migrate from a given struct page, that page is first\n> converted to its pfn, before passing the pfn to migrate_pfn().\n> \n> A future change will remove device private pages from the physical\n> address space. This will mean that device private pages no longer have a\n> pfn and must be handled separately.\n> \n> Prepare for this with a new helper:\n> \n>     - migrate_pfn_from_page()\n> \n> This helper takes a struct page as parameter instead of a pfn. This will\n> allow more flexibility for handling the mpfn differently for device\n> private pages.\n> \n> Signed-off-by: Jordan Niethe <jniethe@nvidia.com>\n> ---\n> v2: New to series\n> ---\n>  arch/powerpc/kvm/book3s_hv_uvmem.c       |  2 +-\n>  drivers/gpu/drm/amd/amdkfd/kfd_migrate.c |  2 +-\n>  drivers/gpu/drm/drm_pagemap.c            |  2 +-\n>  drivers/gpu/drm/nouveau/nouveau_dmem.c   |  4 ++--\n>  include/linux/migrate.h                  |  5 +++++\n>  lib/test_hmm.c                           | 11 ++++++-----\n>  mm/migrate_device.c                      |  7 +++----\n>  7 files changed, 19 insertions(+), 14 deletions(-)\n> \n> diff --git a/arch/powerpc/kvm/book3s_hv_uvmem.c b/arch/powerpc/kvm/book3s_hv_uvmem.c\n> index e5000bef90f2..67910900af7b 100644\n> --- a/arch/powerpc/kvm/book3s_hv_uvmem.c\n> +++ b/arch/powerpc/kvm/book3s_hv_uvmem.c\n> @@ -784,7 +784,7 @@ static int kvmppc_svm_page_in(struct vm_area_struct *vma,\n>  \t\t}\n>  \t}\n>  \n> -\t*mig.dst = migrate_pfn(page_to_pfn(dpage));\n> +\t*mig.dst = migrate_pfn_from_page(dpage);\n>  \tmigrate_vma_pages(&mig);\n>  out_finalize:\n>  \tmigrate_vma_finalize(&mig);\n> diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_migrate.c b/drivers/gpu/drm/amd/amdkfd/kfd_migrate.c\n> index af53e796ea1b..ca552c34ece2 100644\n> --- a/drivers/gpu/drm/amd/amdkfd/kfd_migrate.c\n> +++ b/drivers/gpu/drm/amd/amdkfd/kfd_migrate.c\n> @@ -646,7 +646,7 @@ svm_migrate_copy_to_ram(struct amdgpu_device *adev, struct svm_range *prange,\n>  \t\tpr_debug_ratelimited(\"dma mapping dst to 0x%llx, pfn 0x%lx\\n\",\n>  \t\t\t\t     dst[i] >> PAGE_SHIFT, page_to_pfn(dpage));\n>  \n> -\t\tmigrate->dst[i] = migrate_pfn(page_to_pfn(dpage));\n> +\t\tmigrate->dst[i] = migrate_pfn_from_page(dpage);\n>  \t\tj++;\n>  \t}\n>  \n> diff --git a/drivers/gpu/drm/drm_pagemap.c b/drivers/gpu/drm/drm_pagemap.c\n> index 37d7cfbbb3e8..5ddf395847ef 100644\n> --- a/drivers/gpu/drm/drm_pagemap.c\n> +++ b/drivers/gpu/drm/drm_pagemap.c\n> @@ -490,7 +490,7 @@ static int drm_pagemap_migrate_populate_ram_pfn(struct vm_area_struct *vas,\n>  \t\t\tgoto free_pages;\n>  \n>  \t\tpage = folio_page(folio, 0);\n> -\t\tmpfn[i] = migrate_pfn(page_to_pfn(page));\n> +\t\tmpfn[i] = migrate_pfn_from_page(page);\n>  \n>  next:\n>  \t\tif (page)\n> diff --git a/drivers/gpu/drm/nouveau/nouveau_dmem.c b/drivers/gpu/drm/nouveau/nouveau_dmem.c\n> index 58071652679d..a7edcdca9701 100644\n> --- a/drivers/gpu/drm/nouveau/nouveau_dmem.c\n> +++ b/drivers/gpu/drm/nouveau/nouveau_dmem.c\n> @@ -249,7 +249,7 @@ static vm_fault_t nouveau_dmem_migrate_to_ram(struct vm_fault *vmf)\n>  \t\tgoto done;\n>  \t}\n>  \n> -\targs.dst[0] = migrate_pfn(page_to_pfn(dpage));\n> +\targs.dst[0] = migrate_pfn_from_page(dpage);\n>  \tif (order)\n>  \t\targs.dst[0] |= MIGRATE_PFN_COMPOUND;\n>  \tdfolio = page_folio(dpage);\n> @@ -766,7 +766,7 @@ static unsigned long nouveau_dmem_migrate_copy_one(struct nouveau_drm *drm,\n>  \t\t((paddr >> PAGE_SHIFT) << NVIF_VMM_PFNMAP_V0_ADDR_SHIFT);\n>  \tif (src & MIGRATE_PFN_WRITE)\n>  \t\t*pfn |= NVIF_VMM_PFNMAP_V0_W;\n> -\tmpfn = migrate_pfn(page_to_pfn(dpage));\n> +\tmpfn = migrate_pfn_from_page(dpage);\n>  \tif (folio_order(page_folio(dpage)))\n>  \t\tmpfn |= MIGRATE_PFN_COMPOUND;\n>  \treturn mpfn;\n> diff --git a/include/linux/migrate.h b/include/linux/migrate.h\n> index 26ca00c325d9..d269ec1400be 100644\n> --- a/include/linux/migrate.h\n> +++ b/include/linux/migrate.h\n> @@ -140,6 +140,11 @@ static inline unsigned long migrate_pfn(unsigned long pfn)\n>  \treturn (pfn << MIGRATE_PFN_SHIFT) | MIGRATE_PFN_VALID;\n>  }\n>  \n> +static inline unsigned long migrate_pfn_from_page(struct page *page)\n> +{\n> +\treturn migrate_pfn(page_to_pfn(page));\n> +}\n> +\n>  enum migrate_vma_direction {\n>  \tMIGRATE_VMA_SELECT_SYSTEM = 1 << 0,\n>  \tMIGRATE_VMA_SELECT_DEVICE_PRIVATE = 1 << 1,\n> diff --git a/lib/test_hmm.c b/lib/test_hmm.c\n> index 8af169d3873a..7e5248404d00 100644\n> --- a/lib/test_hmm.c\n> +++ b/lib/test_hmm.c\n> @@ -727,7 +727,8 @@ static void dmirror_migrate_alloc_and_copy(struct migrate_vma *args,\n>  \t\t\t\trpage = BACKING_PAGE(dpage);\n>  \t\t\t\trpage->zone_device_data = dmirror;\n>  \n> -\t\t\t\t*dst = migrate_pfn(page_to_pfn(dpage)) | write;\n> +\t\t\t\t*dst = migrate_pfn_from_page(dpage) |\n> +\t\t\t\t       write;\n>  \t\t\t\tsrc_page = pfn_to_page(spfn + i);\n>  \n>  \t\t\t\tif (spage)\n> @@ -754,7 +755,7 @@ static void dmirror_migrate_alloc_and_copy(struct migrate_vma *args,\n>  \t\tpr_debug(\"migrating from sys to dev pfn src: 0x%lx pfn dst: 0x%lx\\n\",\n>  \t\t\t page_to_pfn(spage), page_to_pfn(dpage));\n>  \n> -\t\t*dst = migrate_pfn(page_to_pfn(dpage)) | write;\n> +\t\t*dst = migrate_pfn_from_page(dpage) | write;\n>  \n>  \t\tif (is_large) {\n>  \t\t\tint i;\n> @@ -989,7 +990,7 @@ static vm_fault_t dmirror_devmem_fault_alloc_and_copy(struct migrate_vma *args,\n>  \n>  \t\tif (dpage) {\n>  \t\t\tlock_page(dpage);\n> -\t\t\t*dst |= migrate_pfn(page_to_pfn(dpage));\n> +\t\t\t*dst |= migrate_pfn_from_page(dpage);\n>  \t\t}\n>  \n>  \t\tfor (i = 0; i < (1 << order); i++) {\n> @@ -1000,7 +1001,7 @@ static vm_fault_t dmirror_devmem_fault_alloc_and_copy(struct migrate_vma *args,\n>  \t\t\tif (!dpage && order) {\n>  \t\t\t\tdpage = alloc_page_vma(GFP_HIGHUSER_MOVABLE, args->vma, addr);\n>  \t\t\t\tlock_page(dpage);\n> -\t\t\t\tdst[i] = migrate_pfn(page_to_pfn(dpage));\n> +\t\t\t\tdst[i] = migrate_pfn_from_page(dpage);\n>  \t\t\t\tdst_page = pfn_to_page(page_to_pfn(dpage));\n>  \t\t\t\tdpage = NULL; /* For the next iteration */\n>  \t\t\t} else {\n> @@ -1412,7 +1413,7 @@ static void dmirror_device_evict_chunk(struct dmirror_chunk *chunk)\n>  \n>  \t\t/* TODO Support splitting here */\n>  \t\tlock_page(dpage);\n> -\t\tdst_pfns[i] = migrate_pfn(page_to_pfn(dpage));\n> +\t\tdst_pfns[i] = migrate_pfn_from_page(dpage);\n>  \t\tif (src_pfns[i] & MIGRATE_PFN_WRITE)\n>  \t\t\tdst_pfns[i] |= MIGRATE_PFN_WRITE;\n>  \t\tif (order)\n> diff --git a/mm/migrate_device.c b/mm/migrate_device.c\n> index 23379663b1e1..1a2067f830da 100644\n> --- a/mm/migrate_device.c\n> +++ b/mm/migrate_device.c\n> @@ -207,9 +207,8 @@ static int migrate_vma_collect_huge_pmd(pmd_t *pmdp, unsigned long start,\n>  \t\t\t.vma = walk->vma,\n>  \t\t};\n>  \n> -\t\tunsigned long pfn = page_to_pfn(folio_page(folio, 0));\n> -\n> -\t\tmigrate->src[migrate->npages] = migrate_pfn(pfn) | write\n> +\t\tmigrate->src[migrate->npages] = migrate_pfn_from_page(folio_page(folio, 0))\n> +\t\t\t\t\t\t| write\n>  \t\t\t\t\t\t| MIGRATE_PFN_MIGRATE\n>  \t\t\t\t\t\t| MIGRATE_PFN_COMPOUND;\n>  \t\tmigrate->dst[migrate->npages++] = 0;\n> @@ -328,7 +327,7 @@ static int migrate_vma_collect_pmd(pmd_t *pmdp,\n>  \t\t\t\tgoto again;\n>  \t\t\t}\n>  \n> -\t\t\tmpfn = migrate_pfn(page_to_pfn(page)) |\n> +\t\t\tmpfn = migrate_pfn_from_page(page) |\n>  \t\t\t\t\tMIGRATE_PFN_MIGRATE;\n>  \t\t\tif (softleaf_is_device_private_write(entry))\n>  \t\t\t\tmpfn |= MIGRATE_PFN_WRITE;\n\nMakes sense\n\nReviewed-by: Balbir Singh <balbirs@nvidia.com>","headers":{"Return-Path":"\n <linuxppc-dev+bounces-15481-incoming=patchwork.ozlabs.org@lists.ozlabs.org>","X-Original-To":["incoming@patchwork.ozlabs.org","linuxppc-dev@lists.ozlabs.org"],"Delivered-To":"patchwork-incoming@legolas.ozlabs.org","Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=Nvidia.com header.i=@Nvidia.com header.a=rsa-sha256\n header.s=selector2 header.b=C3DMbxyN;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=lists.ozlabs.org\n (client-ip=2404:9400:21b9:f100::1; helo=lists.ozlabs.org;\n envelope-from=linuxppc-dev+bounces-15481-incoming=patchwork.ozlabs.org@lists.ozlabs.org;\n receiver=patchwork.ozlabs.org)","lists.ozlabs.org;\n arc=pass smtp.remote-ip=40.107.209.30 arc.chain=microsoft.com","lists.ozlabs.org;\n dmarc=pass (p=reject dis=none) header.from=nvidia.com","lists.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=Nvidia.com header.i=@Nvidia.com header.a=rsa-sha256\n header.s=selector2 header.b=C3DMbxyN;\n\tdkim-atps=neutral","lists.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=nvidia.com\n (client-ip=40.107.209.30; helo=ph8pr06cu001.outbound.protection.outlook.com;\n envelope-from=balbirs@nvidia.com; receiver=lists.ozlabs.org)","dkim=none (message not signed)\n header.d=none;dmarc=none action=none header.from=nvidia.com;"],"Received":["from lists.ozlabs.org (lists.ozlabs.org\n [IPv6:2404:9400:21b9:f100::1])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4dnxlK2V68z1xqr\n\tfor <incoming@patchwork.ozlabs.org>; Sat, 10 Jan 2026 09:48:44 +1100 (AEDT)","from boromir.ozlabs.org (localhost [127.0.0.1])\n\tby lists.ozlabs.org (Postfix) with ESMTP id 4dnxlH66P5z2yDk;\n\tSat, 10 Jan 2026 09:48:43 +1100 (AEDT)","from PH8PR06CU001.outbound.protection.outlook.com\n (mail-westus3azon11012030.outbound.protection.outlook.com [40.107.209.30])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange secp256r1 server-signature RSA-PSS (2048 bits) server-digest\n SHA256)\n\t(No client certificate requested)\n\tby lists.ozlabs.org (Postfix) with ESMTPS id 4dnxlG1nL3z2x9M\n\tfor <linuxppc-dev@lists.ozlabs.org>; Sat, 10 Jan 2026 09:48:41 +1100 (AEDT)","from PH8PR12MB7277.namprd12.prod.outlook.com (2603:10b6:510:223::13)\n by IA0PR12MB7627.namprd12.prod.outlook.com (2603:10b6:208:437::12) with\n Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9499.5; Fri, 9 Jan\n 2026 22:47:59 +0000","from PH8PR12MB7277.namprd12.prod.outlook.com\n ([fe80::3a4:70ea:ff05:1251]) by PH8PR12MB7277.namprd12.prod.outlook.com\n ([fe80::3a4:70ea:ff05:1251%7]) with mapi id 15.20.9478.004; Fri, 9 Jan 2026\n 22:47:58 +0000"],"ARC-Seal":["i=2; a=rsa-sha256; d=lists.ozlabs.org; s=201707; t=1767998923;\n\tcv=pass;\n b=RQPK4ieCNSvgu8gZDQ90APUa02RPCY40DOh5J8eD/4es+DJT4j7hmjo1B/lhHYBYmm5BhF6dAas1Tq2NjJ5Bjqp2hos9fN7Mir3wpC2k9kz08UMpgL3mW7rtufoOvH2kr16pxm4AKlPBJOsHW7ulP2Ke43VI+5gankDJMUzgVg4lZtJucocS1AjTpBcnD9kvpuKwsIg0K42onv2yJ2xxXGtAFzFRgUDXXtKSQGSf11Tgf09JNmAULQG6nGJoq+bHrEw0BP0MvR5B7ymSCxmQbVZCuYmd+oB0TWOhZOlcIw73rI7g0Vgzr9p1nOlZvd+pp+EfCVVx9ji3Ds1Hsf5+qg==","i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none;\n b=vl+WQaH6cqNPrqa0tsRz/oxf6mMteAl9sDj2oDL51q84xc9NmeqLONlfxi2/nalf6giigas+aCZJ2nvQC4jEpJ7d37usGqzaKhNzHA650yMayDhTCF6NAZsNDruCBPfklM8aIecN/Ya+8J/aExo0DIzsrGps3RDvZLt/I8/GGMYyrRKxGHHXZMD2NgsedVu5KQloHC8jdEdXp2nrIBEOsoIr2IYpRiUDd1pSpV6KkcwMx5n7jURElD4x39vqr2BjxMWxu7lUPBk+yw9CF/aOq7kqsY+sWj+Y1CXh3p3Qf6qGkmGwl5hXpp7c/F3jxc2reA1vD1/5yZQWxUGRzwbirQ=="],"ARC-Message-Signature":["i=2; a=rsa-sha256; d=lists.ozlabs.org; s=201707;\n\tt=1767998923; c=relaxed/relaxed;\n\tbh=U2dpLTO2TXbY91owej+oO41CSyVsP/IrqRXFPniHF30=;\n\th=Message-ID:Date:Subject:To:Cc:References:From:In-Reply-To:\n\t Content-Type:MIME-Version;\n b=dPKJygV0V4hAo0Xm1b4u2f/QpdyRC+JqXRizw5rzk40XpdeRfKBq0n6TpEgXO+3M6JucNDOff5w+4fSor667fheb2PvDA2d8SvzxkYpDQNA/jGg8WAXPTIx1tHbIYSN5H33CjOdnQk3a2Y+Rs8C2b73/gXUEe61UAwtOTGjZ0w5IZcSoHSpO9hfvhT+gE0Lq3Z7cUCGeBtvzwDY1ww/A7sOez5LiiIFZ97SBD2OoapFH4gaAdZotQPkt3MnVCLlh78J8Il1+ySHGhEMRapZmi9ESrnmcbcirNq4/9hbZ2ZXJkuw/Iy4HVIAunuGsMKHFeOr8AE6htLux4ri+WJiccg==","i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;\n s=arcselector10001;\n 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;\n bh=U2dpLTO2TXbY91owej+oO41CSyVsP/IrqRXFPniHF30=;\n b=kQi5OdY04dNgpq2GCHnrVshC6KJbZT10Rbh2bf1qIjrjUk00Xp9drOUxca7sYC0Ga5zYnXeBVONvrLXdx+tePc3cr9bMXxrQ24HU3xNikNjlYk3dJlWiQMa565EbuiBhBWKHhs24gGwcCwwsw5aixWQC745uHK/NWGSzvZBQLOHseBK48/kUrUXW3Ut8AkL8LxAF/VqxPUt60TR2nU/LT7NEQ6cYGJn2bLMbbmedukIMkemh+1OGTMvYah4vOOJE5ShUUv+3etdgz14/te5G+/1lgKjxoDAr8bm9oDxjWrRREebSWIrvv+ZCWML6Pe0nhOqqZc2/EWimM9h465BTzQ=="],"ARC-Authentication-Results":["i=2; lists.ozlabs.org;\n dmarc=pass (p=reject dis=none) header.from=nvidia.com;\n dkim=pass (2048-bit key;\n unprotected) header.d=Nvidia.com header.i=@Nvidia.com header.a=rsa-sha256\n header.s=selector2 header.b=C3DMbxyN; dkim-atps=neutral;\n spf=pass (client-ip=40.107.209.30;\n helo=ph8pr06cu001.outbound.protection.outlook.com;\n envelope-from=balbirs@nvidia.com;\n receiver=lists.ozlabs.org) smtp.mailfrom=nvidia.com","i=1; mx.microsoft.com 1; spf=pass\n smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com;\n dkim=pass header.d=nvidia.com; arc=none"],"DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com;\n s=selector2;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n bh=U2dpLTO2TXbY91owej+oO41CSyVsP/IrqRXFPniHF30=;\n b=C3DMbxyN1f44rfYXzJlzby3XaUjnn56sJ7H6v5pQauNjjwr0A7vpLyVWmY8s8/J3Miu+Qc3z6VBooNfWBWpunq4oSWsYjkZNQDJ+tnfTcoMBF4tVIuFoJEj1xr+jUNdyWmu4wHNy16DEFS5Tf+eZv4AdYStphsl6xj606XRjg5Q5jyJhLa1xsTkEN6qgE0dlg3puocd1k8EZQhJQrFcIlxXZsyms66d8acwJ2vJZfOmrUxmro8IvlVQWHnoS96/Qayd2QQwcqJ3xnZc+nSLH3xcm2GBLdp+WigEP68WuVvg9lUlDqT+XtRRZYcTEVa2bxBCqMRitk7VeQeYv4H8eWg==","Message-ID":"<85cebb34-5034-4c2c-bd8b-d636224e39ee@nvidia.com>","Date":"Sat, 10 Jan 2026 09:47:50 +1100","User-Agent":"Mozilla Thunderbird","Subject":"Re: [PATCH v2 01/11] mm/migrate_device: Introduce\n migrate_pfn_from_page() helper","To":"Jordan Niethe <jniethe@nvidia.com>, linux-mm@kvack.org","Cc":"matthew.brost@intel.com, akpm@linux-foundation.org,\n linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org,\n david@redhat.com, ziy@nvidia.com, apopple@nvidia.com,\n lorenzo.stoakes@oracle.com, lyude@redhat.com, dakr@kernel.org,\n airlied@gmail.com, simona@ffwll.ch, rcampbell@nvidia.com,\n mpenttil@redhat.com, jgg@nvidia.com, willy@infradead.org,\n linuxppc-dev@lists.ozlabs.org, intel-xe@lists.freedesktop.org, jgg@ziepe.ca,\n Felix.Kuehling@amd.com","References":"<20260107091823.68974-1-jniethe@nvidia.com>\n <20260107091823.68974-2-jniethe@nvidia.com>","Content-Language":"en-US","From":"Balbir Singh <balbirs@nvidia.com>","In-Reply-To":"<20260107091823.68974-2-jniethe@nvidia.com>","Content-Type":"text/plain; charset=UTF-8","Content-Transfer-Encoding":"7bit","X-ClientProxiedBy":"SJ0PR05CA0148.namprd05.prod.outlook.com\n (2603:10b6:a03:33d::33) To PH8PR12MB7277.namprd12.prod.outlook.com\n (2603:10b6:510:223::13)","X-Mailing-List":"linuxppc-dev@lists.ozlabs.org","List-Id":"<linuxppc-dev.lists.ozlabs.org>","List-Help":"<mailto:linuxppc-dev+help@lists.ozlabs.org>","List-Owner":"<mailto:linuxppc-dev+owner@lists.ozlabs.org>","List-Post":"<mailto:linuxppc-dev@lists.ozlabs.org>","List-Archive":"<https://lore.kernel.org/linuxppc-dev/>,\n  <https://lists.ozlabs.org/pipermail/linuxppc-dev/>","List-Subscribe":"<mailto:linuxppc-dev+subscribe@lists.ozlabs.org>,\n  <mailto:linuxppc-dev+subscribe-digest@lists.ozlabs.org>,\n  <mailto:linuxppc-dev+subscribe-nomail@lists.ozlabs.org>","List-Unsubscribe":"<mailto:linuxppc-dev+unsubscribe@lists.ozlabs.org>","Precedence":"list","MIME-Version":"1.0","X-MS-PublicTrafficType":"Email","X-MS-TrafficTypeDiagnostic":"PH8PR12MB7277:EE_|IA0PR12MB7627:EE_","X-MS-Office365-Filtering-Correlation-Id":"874b8789-9e68-4f5e-5bb0-08de4fd12303","X-MS-Exchange-SenderADCheck":"1","X-MS-Exchange-AntiSpam-Relay":"0","X-Microsoft-Antispam":"\n\tBCL:0;ARA:13230040|1800799024|376014|7416014|10070799003|366016;","X-Microsoft-Antispam-Message-Info":"=?utf-8?q?OkrEDlwqzPBdgmlW6geLaf96fvrCsX5?=\n\t=?utf-8?q?0+SR96Qx5qsUtgDA8NBlKuSAorVRptD+5z9ETpUm+aWIRTIUnQjGrDbyUPDwLsmWi?=\n\t=?utf-8?q?sH3tfPKp0Jex00p6pGpfMUUTYAfvnB/END4vkz8QlyC2lIqutOsnKV6S6VnmZ4Fv9?=\n\t=?utf-8?q?qHHmnOGQzOtSD7drtCknsnFwfN3pX8FrKspvPDZkLBxzbcoc7/pLHzWU4vbAOrvtZ?=\n\t=?utf-8?q?HQePEy9d+z8sjatGaUfnps5QbAJcZXv7Xu86UcA5IC4f1QAFwt55HBAXY7/5pyu+V?=\n\t=?utf-8?q?nF9zDVwr9c1OqukI0za3yFUiOzNyx3gf45bO26fh+2O9UFTcrmXg28yOWiZmUGo5i?=\n\t=?utf-8?q?BqIQvgr9HASVCPL7z+fhCi7yoZNjUhfFxvLE+gk5zIe+EbHM3qSFaAkzveCoI0+I1?=\n\t=?utf-8?q?eq3107j7dDPDddf3tWfZ3ZWymntlgq1amQGAd2jKBZHf1FnwiGE1Us1UIBG05mOqJ?=\n\t=?utf-8?q?dgJaLLT7T+CkiK8IwuQ15kEkT9pPjjKElxzXvFJzVJ6xx2dbp/ipMX38cMKQ6o/H9?=\n\t=?utf-8?q?0F6DRiw01K5gZ/3utuhhd5QtcUq+U8TqG98AU6d3L4G2+we8zWoWXpVbDGa106GjI?=\n\t=?utf-8?q?PRsllbhLlenUAb8S8oddxaFyHarkGo8yla9E34N8TMBPvjfSyuLJWpnjonUyfabxw?=\n\t=?utf-8?q?yqMEr832SoN3XpPX+oI5G+4aFKMGuaV/3MfpTvip69SJmi/Url4yHezY18rCKmYap?=\n\t=?utf-8?q?aYWk6i/eom0RXQvL0W3XOvGTeYd6UTawjVEPOMTe+Me3YtmzWjs1WJYUu2z3T5Ks9?=\n\t=?utf-8?q?+vq96GnuyHhwtGafBnrqvMZuHtVNyfh6rXTdwhwsqes03Ys8ucvc/IlquXlGWFKce?=\n\t=?utf-8?q?edh8zH/wcS/fbdi9t6FXFKTKhYdge9njd0wcHRyMYtTyNZ3ngwzfGwZsHvMRkRgI7?=\n\t=?utf-8?q?Mrw3/K6zcXTdGU8b/nMOPnIveHc/Kw9mjkczh3hI7nvNoJx4suemcZT3xEHSFUZ6o?=\n\t=?utf-8?q?gpDOkFml/dT36dWR1C8W/C2CjmsfZky8qHe21fwqY2r9ggb89EgcVVgyamuCUwUJE?=\n\t=?utf-8?q?CfJ45o3kDSnKnIrk8LYukdckdZYiRYUd2pdJ+mCS5jGvVu0qD0YdHT2T8Os6aQqRz?=\n\t=?utf-8?q?alfHQ6nksFVMd/ZKL/pEVmBmqGglZHkdXI55zALPfMzdi/UgcaAsI83qrzg3s7PSC?=\n\t=?utf-8?q?/Nx03L9H1Ur1RoweJsL6kRlb+Fg4Z6cGFJ59i/HGws/EY9Y+P/wJZ0o5wm+/Aw761?=\n\t=?utf-8?q?bYmDNbT+IDGCyLzHpZpqHBWr9xOwU0cHNsarUNd+pUbJczjLHz0N4oUZeUASfRSs6?=\n\t=?utf-8?q?L4BxVT3byn+07LXuzCEEREXeMX3d+RA0X9pZa2xzL/N9N0v79zU1GAGQkQhOeeSBk?=\n\t=?utf-8?q?LslCi7zOZWEFtt3QMD8xOWvShtzLAGZA80U0Wn03t1xkuCPZo2Haq21Qz30/9yyXq?=\n\t=?utf-8?q?cEIMNL07Jo+?=","X-Forefront-Antispam-Report":"\n\tCIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PH8PR12MB7277.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(376014)(7416014)(10070799003)(366016);DIR:OUT;SFP:1101;","X-MS-Exchange-AntiSpam-MessageData-ChunkCount":"2","X-MS-Exchange-AntiSpam-MessageData-0":"=?utf-8?q?waQkotuyGikUTqbB25pm0wOWhb1x?=\n\t=?utf-8?q?OYl/wRQQgO3uCt2y4uR03cGG8IaupBnRrS7CbEhmlEkMekzit5Oln4cISy/TrN4eJ?=\n\t=?utf-8?q?OleY3u4H9rA5yO5xLmUeEABEKNHA9FE5pDt6O+kGvMlcJg+YEcV1TLwgPr6GiiFMQ?=\n\t=?utf-8?q?dis1as/XkDp8k2lGWc7LdYsm4IOns9ALe5kbQ1sREcVB6MT+OMi0zx2E9uKxv8E8H?=\n\t=?utf-8?q?j6XV6LYfBqm/45JQVEYzQTf8j9fWjNu0+5NCfI11kOkKRKHIyV6xcHOwjdqrHFj9n?=\n\t=?utf-8?q?TYiSwzHoWI/+kMx8r5L4KnqIal+P14/thlQcm9Y3aMZUZAyr4441vI7zByNAkcqB5?=\n\t=?utf-8?q?XqaYT3OSrRpFtWPsO7CJ0rEvn7+zLJWvdWseGkqZFECt7SiNHJCkOYi45Isz3whaX?=\n\t=?utf-8?q?pgsH2ZNGhcFVowDw0NLsqQNzMcEIwjw17jtYmgJPbIyOtvw375gCB832VF9S8of31?=\n\t=?utf-8?q?p0J4l4WDBMQy0uIwJRMCTlS6kh9nOZsKFmtLEEb7Y4lUyAhuRAzrFGcWBYqSAL3bF?=\n\t=?utf-8?q?FNVMEVPHhpL5qmXB7gMera+74tTpaMjpJec6+oSUsBkvbpSNeNWQrELA+rwZzeGNZ?=\n\t=?utf-8?q?IRmNcSkfiPlx0d0Z4FbY2wEvGUGEERY9ApbWuQ49o84Xkh2VI5EeMK6mTlfk4tbwe?=\n\t=?utf-8?q?/1b+3ZFdMHhBslVkDofF0KXt2hweo62Zq4dGfkfWvhl73Io5CCqYw9g5uvGIXg9KZ?=\n\t=?utf-8?q?oLnDQvr95SZsDCRGU/06WjsgG9tRh4814kXSaDCLq+ZpqHoL8BnoaMQHj/p4DyCBD?=\n\t=?utf-8?q?KR/MzkRxlgb8KIJ24jpyE/+Y3p8lxrdtQErVrYS5G+PcKzzEIsXr4X5oQyAX0HgqH?=\n\t=?utf-8?q?4yUa9k3Hp7SOB9LI+aomuMFvurcNMYnPsx8AVOQROaj6vgKdGpruuCqEaJs7RM31u?=\n\t=?utf-8?q?3RfdSWJxJi3FAHlqjf/5pdDRlyOsfSefLB9ijWMfU7LVozr/VuHOgF56T0rEPmRtV?=\n\t=?utf-8?q?uMMbtGasv0BwJQQjTsA6fGAnF+T7NkgQ5X9L5GRyuBWZRB5yIkLkEg/suwkiL1pUo?=\n\t=?utf-8?q?1HsEkbZQozGcgQc/ULjyeCSBEW5iE3dFruB5EtoeBtz7o2jYw3HV0pjtX374SR3f5?=\n\t=?utf-8?q?r+nvNiUCI8979SCyiXitXNOEsle9jNocfQaJhzLY8FKw7MKg8p5wh8oYLSsxJ+e8m?=\n\t=?utf-8?q?GHxfgwG53qZRhHZSXtDOH2ItBURKC7baS0/OFamxc+8A2YD4ZQObMneFhVlC4I6o7?=\n\t=?utf-8?q?qQlFB60RC5R6NmbOuy7fM0Klt4xhl7C0GI8Dq0K2eFS67BnuWaaVvVm0tqDfiNbee?=\n\t=?utf-8?q?zmVhx7fII1C1mNiKdUijaL5vzk34IFPE6OiKBeq47MI7Z4RN1svbXDZ2cUwjCCCI6?=\n\t=?utf-8?q?GnC/ptL4LK0FB4LEjsUFDXfhTpI+LgM3WgOdWO65OIBx7m+6l3wjHh1a3ZYAxGSWp?=\n\t=?utf-8?q?OR9NT7moLRtelFV/66V3RpLgFJOuSER0p7xKWpMs3EBtQZoPjQGonwVUKJyfDPF9n?=\n\t=?utf-8?q?0hjTdMUIumCAeF180dW42/xXtfXyJswTiuFl7nv9+uv+wvIUuMkmPpko4+w0x3GgX?=\n\t=?utf-8?q?DdA69yUd5eCyL0puZONJF4KooYccQOWmGQjY14me0fiK4xI0cO2nnOGt+ZANB91+E?=\n\t=?utf-8?q?MyCyFnIi/ek+lHvf17tTq4SVPIPNhkNnxq5FNYSXZwBSBiBELj9O6ZSpVWhUPNGx7?=\n\t=?utf-8?q?5L4GXL08FGTd5wqNIMrth7QuC56C+eGWZ8UBK1nWVoaD1FZ5TTrhJwyuZWfi3olI1?=\n\t=?utf-8?q?ecXpo3okxNVAJ3/qm?=","X-MS-Exchange-AntiSpam-MessageData-1":"bAMq6C7Lf8uKdw==","X-OriginatorOrg":"Nvidia.com","X-MS-Exchange-CrossTenant-Network-Message-Id":"\n 874b8789-9e68-4f5e-5bb0-08de4fd12303","X-MS-Exchange-CrossTenant-AuthSource":"PH8PR12MB7277.namprd12.prod.outlook.com","X-MS-Exchange-CrossTenant-AuthAs":"Internal","X-MS-Exchange-CrossTenant-OriginalArrivalTime":"09 Jan 2026 22:47:58.8815\n (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":"\n HhuYFlzz/vpAyuFphl8DAepADc3oua/HbUNWxfQStRGReQws5GmRvob4VleCg9IUdBMUwy24wGbT1rWZM6JYsQ==","X-MS-Exchange-Transport-CrossTenantHeadersStamped":"IA0PR12MB7627","X-Spam-Status":"No, score=-0.2 required=3.0 tests=ARC_SIGNED,ARC_VALID,\n\tDKIMWL_WL_HIGH,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,\n\tRCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,SPF_PASS\n\tautolearn=disabled version=4.0.1 OzLabs 8","X-Spam-Checker-Version":"SpamAssassin 4.0.1 (2024-03-25) on lists.ozlabs.org"}}]