On Sat, Jul 31, 2021 at 12:39:38AM -0600, Yu Zhao wrote: > @@ -267,13 +308,19 @@ static bool remove_migration_pte(struct page *page, struct vm_area_struct *vma, > * Get rid of all migration entries and replace them by > * references to the indicated page. > */ > -void remove_migration_ptes(struct page *old, struct page *new, bool locked) > +void remove_migration_ptes(struct page *old, struct page *new, bool locked, bool unmap_clean) > { > + struct rmap_walk_arg rmap_walk_arg = { > + .page = old, > + .unmap_clean = unmap_clean, > + }; > struct rmap_walk_control rwc = { > .rmap_one = remove_migration_pte, > - .arg = old, > + .arg = &rmap_walk_arg, > }; 'old' pointer has few low always-zero bit :P -- Kirill A. Shutemov