Reviewed-by: Alistair Popple <apopple@xxxxxxxxxx> On Thursday, 10 February 2022 6:28:12 PM AEDT Christoph Hellwig wrote: > Make the flow a little more clear and prepare for adding a new > ZONE_DEVICE memory type. > > Signed-off-by: Christoph Hellwig <hch@xxxxxx> > --- > mm/migrate.c | 31 +++++++++++++++---------------- > 1 file changed, 15 insertions(+), 16 deletions(-) > > diff --git a/mm/migrate.c b/mm/migrate.c > index 8e0370a73f8a43..30ecd7223656c1 100644 > --- a/mm/migrate.c > +++ b/mm/migrate.c > @@ -2670,26 +2670,25 @@ static void migrate_vma_insert_page(struct migrate_vma *migrate, > */ > __SetPageUptodate(page); > > - if (is_zone_device_page(page)) { > - if (is_device_private_page(page)) { > - swp_entry_t swp_entry; > + if (is_device_private_page(page)) { > + swp_entry_t swp_entry; > > - if (vma->vm_flags & VM_WRITE) > - swp_entry = make_writable_device_private_entry( > - page_to_pfn(page)); > - else > - swp_entry = make_readable_device_private_entry( > - page_to_pfn(page)); > - entry = swp_entry_to_pte(swp_entry); > - } else { > - /* > - * For now we only support migrating to un-addressable > - * device memory. > - */ > + if (vma->vm_flags & VM_WRITE) > + swp_entry = make_writable_device_private_entry( > + page_to_pfn(page)); > + else > + swp_entry = make_readable_device_private_entry( > + page_to_pfn(page)); > + entry = swp_entry_to_pte(swp_entry); > + } else { > + /* > + * For now we only support migrating to un-addressable device > + * memory. > + */ > + if (is_zone_device_page(page)) { > pr_warn_once("Unsupported ZONE_DEVICE page type.\n"); > goto abort; > } > - } else { > entry = mk_pte(page, vma->vm_page_prot); > if (vma->vm_flags & VM_WRITE) > entry = pte_mkwrite(pte_mkdirty(entry)); >