On Wed, 13 Mar 2024, Sasha Levin wrote: > From: Kefeng Wang <wangkefeng.wang@xxxxxxxxxx> > > [ Upstream commit 728be28fae8c838d52c91dce4867133798146357 ] > > The check of THP mapped by multiple processes was introduced by commit > 04fa5d6a6547 ("mm: migrate: check page_count of THP before migrating") and > refactor by commit 340ef3902cf2 ("mm: numa: cleanup flow of transhuge page > migration"), which is out of date, since migrate_misplaced_page() is now > using the standard migrate_pages() for small pages and THPs, the reference > count checking is in folio_migrate_mapping(), so let's remove the special > check for THP. > > Link: https://lkml.kernel.org/r/20230913095131.2426871-3-wangkefeng.wang@xxxxxxxxxx > Signed-off-by: Kefeng Wang <wangkefeng.wang@xxxxxxxxxx> > Suggested-by: Matthew Wilcox (Oracle) <willy@xxxxxxxxxxxxx> > Reviewed-by: "Huang, Ying" <ying.huang@xxxxxxxxx> > Cc: David Hildenbrand <david@xxxxxxxxxx> > Cc: Hugh Dickins <hughd@xxxxxxxxxx> > Cc: Mike Kravetz <mike.kravetz@xxxxxxxxxx> > Cc: Zi Yan <ziy@xxxxxxxxxx> > Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> > Stable-dep-of: 2774f256e7c0 ("mm/vmscan: fix a bug calling wakeup_kswapd() with a wrong zone index") No it is not: that one is appropriate to include, this one is not. Hugh > Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx> > --- > mm/migrate.c | 4 ---- > 1 file changed, 4 deletions(-) > > diff --git a/mm/migrate.c b/mm/migrate.c > index 6f8ad6b64c9bc..c9fabb960996f 100644 > --- a/mm/migrate.c > +++ b/mm/migrate.c > @@ -2506,10 +2506,6 @@ static int numamigrate_isolate_page(pg_data_t *pgdat, struct page *page) > int nr_pages = thp_nr_pages(page); > int order = compound_order(page); > > - /* Do not migrate THP mapped by multiple processes */ > - if (PageTransHuge(page) && total_mapcount(page) > 1) > - return 0; > - > /* Avoid migrating to a node that is nearly full */ > if (!migrate_balanced_pgdat(pgdat, nr_pages)) { > int z; > -- > 2.43.0 > >