Message ID | 20220531122530.17996-1-linmiaohe@huawei.com (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | mm/migrate: skip unsupported ZONE_DEVICE page in migrate_vma_collect_pmd() | expand |
On Tue, 31 May 2022 20:25:30 +0800 Miaohe Lin <linmiaohe@huawei.com> wrote: > For now we only support migrating to un-addressable device memory. Other > types of ZONE_DEVICE pages are not supported yet. So skip those pages in > MIGRATE_VMA_SELECT_SYSTEM case to save useless effort. > https://lkml.kernel.org/r/20220531155629.20057-4-alex.sierra@amd.com just made similar-but-different changes here. Please review those. Normally I'm merge your fixlet ahead of the larger changes and redo Alex's patchset. Because Alex's larger patchset might never get mainlined, so your fixlet would then get lost. But in this case, your fixlet doesn't seem important enough to be churning things around in that way? > --- a/mm/migrate_device.c > +++ b/mm/migrate_device.c > @@ -157,6 +157,11 @@ static int migrate_vma_collect_pmd(pmd_t *pmdp, > goto next; > } > page = vm_normal_page(migrate->vma, addr, pte); > + /* > + * Other types of ZONE_DEVICE page are not supported. > + */ > + if (page && is_zone_device_page(page)) > + goto next; > mpfn = migrate_pfn(pfn) | MIGRATE_PFN_MIGRATE; > mpfn |= pte_write(pte) ? MIGRATE_PFN_WRITE : 0; > }
On 2022/6/1 2:05, Andrew Morton wrote: > On Tue, 31 May 2022 20:25:30 +0800 Miaohe Lin <linmiaohe@huawei.com> wrote: > >> For now we only support migrating to un-addressable device memory. Other >> types of ZONE_DEVICE pages are not supported yet. So skip those pages in >> MIGRATE_VMA_SELECT_SYSTEM case to save useless effort. >> > > https://lkml.kernel.org/r/20220531155629.20057-4-alex.sierra@amd.com > just made similar-but-different changes here. Please review those. > > Normally I'm merge your fixlet ahead of the larger changes and redo > Alex's patchset. Because Alex's larger patchset might never get > mainlined, so your fixlet would then get lost. > > But in this case, your fixlet doesn't seem important enough to be > churning things around in that way? Yes. Above similar-but-different changes look good to me. I'm fine to drop this patch. Thanks! > >> --- a/mm/migrate_device.c >> +++ b/mm/migrate_device.c >> @@ -157,6 +157,11 @@ static int migrate_vma_collect_pmd(pmd_t *pmdp, >> goto next; >> } >> page = vm_normal_page(migrate->vma, addr, pte); >> + /* >> + * Other types of ZONE_DEVICE page are not supported. >> + */ >> + if (page && is_zone_device_page(page)) >> + goto next; >> mpfn = migrate_pfn(pfn) | MIGRATE_PFN_MIGRATE; >> mpfn |= pte_write(pte) ? MIGRATE_PFN_WRITE : 0; >> } > > . >
diff --git a/mm/migrate_device.c b/mm/migrate_device.c index 5052093d0262..a0452c1d69dd 100644 --- a/mm/migrate_device.c +++ b/mm/migrate_device.c @@ -157,6 +157,11 @@ static int migrate_vma_collect_pmd(pmd_t *pmdp, goto next; } page = vm_normal_page(migrate->vma, addr, pte); + /* + * Other types of ZONE_DEVICE page are not supported. + */ + if (page && is_zone_device_page(page)) + goto next; mpfn = migrate_pfn(pfn) | MIGRATE_PFN_MIGRATE; mpfn |= pte_write(pte) ? MIGRATE_PFN_WRITE : 0; }
For now we only support migrating to un-addressable device memory. Other types of ZONE_DEVICE pages are not supported yet. So skip those pages in MIGRATE_VMA_SELECT_SYSTEM case to save useless effort. Signed-off-by: Miaohe Lin <linmiaohe@huawei.com> --- mm/migrate_device.c | 5 +++++ 1 file changed, 5 insertions(+)