[PATCH mmotm] mm/vmstat: Add events for PMD based THP migration without split fix

From: Hugh Dickins
Date: Thu May 21 2020 - 09:50:13 EST


Fix 5.7-rc6-mm1 page migration crash in unmap_and_move(): when the
page to be migrated has been freed from under us, that is considered
a MIGRATEPAGE_SUCCESS, but no newpage has been allocated (and I don't
think it would ever need to be counted as a successful THP migration).

Signed-off-by: Hugh Dickins <hughd@xxxxxxxxxx>
---
Fix to mm-vmstat-add-events-for-pmd-based-thp-migration-without-split.patch

mm/migrate.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

--- 5.7-rc6-mm1/mm/migrate.c 2020-05-20 12:21:56.117693827 -0700
+++ linux/mm/migrate.c 2020-05-20 15:08:12.319476978 -0700
@@ -1248,7 +1248,7 @@ out:
* we want to retry.
*/
if (rc == MIGRATEPAGE_SUCCESS) {
- if (PageTransHuge(newpage))
+ if (newpage && PageTransHuge(newpage))
thp_migration_success(true);
put_page(page);
if (reason == MR_MEMORY_FAILURE) {