Re: [PATCH v2 1/8] mm: migrate: remove PageTransHuge check in numamigrate_isolate_page()

From: Kefeng Wang
Date: Mon Aug 21 2023 - 10:41:29 EST




On 2023/8/21 20:52, Kefeng Wang wrote:


On 2023/8/21 20:38, Matthew Wilcox wrote:
On Mon, Aug 21, 2023 at 07:56:17PM +0800, Kefeng Wang wrote:
Since we begin to convert the numa migration code to use folio, which
could let us to handle arbitrary sizes of folio, so drop assert that
we only support PageTransHuge page(PMD size) when order > 0.

Have you looked at the implementation of PageTransHuge()?  Your
description doesn't match what the code does.

oops, not only PMD size...

Please ignore about reply, sorry,I misread, PageTransHuge return true
for head page, and BUG_ON for tail page, and compound_order(page) will
return 0 for tail page, so when begin to convert page to folio, we could
drop this line since it is not useful check for folio.



Suggested-by: Matthew Wilcox (Oracle) <willy@xxxxxxxxxxxxx>
Signed-off-by: Kefeng Wang <wangkefeng.wang@xxxxxxxxxx>
---
  mm/migrate.c | 2 --
  1 file changed, 2 deletions(-)

diff --git a/mm/migrate.c b/mm/migrate.c
index b7fa020003f3..646d8ee7f102 100644
--- a/mm/migrate.c
+++ b/mm/migrate.c
@@ -2483,8 +2483,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);
-    VM_BUG_ON_PAGE(order && !PageTransHuge(page), page);
-
      /* Do not migrate THP mapped by multiple processes */
      if (PageTransHuge(page) && total_mapcount(page) > 1)
          return 0;
--
2.41.0