Message ID | 20220711084948.274787-5-ying.huang@intel.com (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | [-V2,1/7] migrate: fix syscall move_pages() return value for failure | expand |
On Mon, Jul 11, 2022 at 04:49:45PM +0800, Huang Ying wrote: > 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" <ying.huang@intel.com> > Fixes: 5984fabb6e82 ("mm: move_pages: report the number of non-attempted pages") > Reviewed-by: Baolin Wang <baolin.wang@linux.alibaba.com> > Cc: Zi Yan <ziy@nvidia.com> > Cc: Yang Shi <shy828301@gmail.com> Reviewed-by: Oscar Salvador <osalvador@suse.de>
diff --git a/mm/migrate.c b/mm/migrate.c index 38e2c789a9c3..4bceba143db0 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