Re: [PATCH 3/3] mm: don't remap clean subpages when splitting isolated thp

From: Kirill A. Shutemov
Date: Wed Aug 04 2021 - 10:27:58 EST


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