[lkml]   [2022]   [Jun]   [23]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
Patch in this message
Subject[PATCH 4/7] migrate_pages(): fix failure counting for THP subpages retrying
If THP is failed to be migrated for -ENOSYS and -ENOMEM, the THP will
be split into thp_split_pages, and after other pages are migrated,
pages in thp_split_pages will be migrated with no_subpage_counting ==
true, because its failure have been counted already. If some pages in
thp_split_pages are retried during migration, we should not count
their failure if no_subpage_counting == true too. This is done this
patch to fix the failure counting for THP subpages retrying.

Signed-off-by: "Huang, Ying" <>
Fixes: 5984fabb6e82 ("mm: move_pages: report the number of non-attempted pages")
Cc: Baolin Wang <>
Cc: Zi Yan <>
Cc: Yang Shi <>
mm/migrate.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/mm/migrate.c b/mm/migrate.c
index 542533e4e3cf..61dab3025a1d 100644
--- a/mm/migrate.c
+++ b/mm/migrate.c
@@ -1477,7 +1477,8 @@ int migrate_pages(struct list_head *from, new_page_t get_new_page,
- nr_failed += retry;
+ if (!no_subpage_counting)
+ nr_failed += retry;
nr_thp_failed += thp_retry;
* Try to migrate subpages of fail-to-migrate THPs, no nr_failed
 \ /
  Last update: 2022-06-24 04:54    [W:0.177 / U:0.076 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site