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 <[email protected]>
---
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) {

Reply via email to