On Thu 16-01-20 21:50:34, Li Xinhai wrote: > On 2020-01-16 at 17:56 Michal Hocko wrote: > >On Thu 16-01-20 04:11:25, Li Xinhai wrote: > >> Checking hstate at early phase when isolating page, instead of during > >> unmap and move phase, to avoid useless isolation. > > > >Could you be more specific what you mean by isolation and why does it > >matter? The patch description should really explain _why_ the change is > >needed or desirable. > > The changelog can be improved: > > vma_migratable() is called to check if pages in vma can be migrated > before go ahead to isolate, unmap and move pages. For hugetlb pages, > hugepage_migration_supported(struct hstate *h) is one factor which > decide if migration is supported. In current code, this function is called > from unmap_and_move_huge_page(), after isolating page has > completed. > This patch checks hstate from vma_migratable() and avoids isolating pages > which are not supported. This still explains what but not why this is relevant. If by isolating pages you mean isolate_lru_page then this really a noop for hugetlb pages. Or do I still misread your changelog? -- Michal Hocko SUSE Labs