On Wed, Sep 03, 2025 at 11:18:51AM +1000, Balbir Singh wrote:
[...]
>@@ -836,15 +1107,47 @@ static void __migrate_device_pages(unsigned long 
>*src_pfns,
>                                       migrate->pgmap_owner);
>                               mmu_notifier_invalidate_range_start(&range);
>                       }
>-                      migrate_vma_insert_page(migrate, addr, newpage,
>+
>+                      if ((src_pfns[i] & MIGRATE_PFN_COMPOUND) &&
>+                              (!(dst_pfns[i] & MIGRATE_PFN_COMPOUND))) {
>+                              nr = HPAGE_PMD_NR;

This one trigger BUILD_BUG() if !PGTABLE_HAS_HUGE_LEAVES.

>+                              src_pfns[i] &= ~MIGRATE_PFN_COMPOUND;
>+                              src_pfns[i] &= ~MIGRATE_PFN_MIGRATE;
>+                              goto next;
>+                      }
>+
>+                      migrate_vma_insert_page(migrate, addr, &dst_pfns[i],
>                                               &src_pfns[i]);
>-                      continue;
>+                      goto next;

-- 
Wei Yang
Help you, Help me

Reply via email to