Loading mm/memory_hotplug.c +11 −5 Original line number Original line Diff line number Diff line Loading @@ -1348,6 +1348,8 @@ do_migrate_range(unsigned long start_pfn, unsigned long end_pfn) struct page *page; struct page *page; int ret = 0; int ret = 0; LIST_HEAD(source); LIST_HEAD(source); static DEFINE_RATELIMIT_STATE(migrate_rs, DEFAULT_RATELIMIT_INTERVAL, DEFAULT_RATELIMIT_BURST); for (pfn = start_pfn; pfn < end_pfn; pfn++) { for (pfn = start_pfn; pfn < end_pfn; pfn++) { if (!pfn_valid(pfn)) if (!pfn_valid(pfn)) Loading Loading @@ -1397,9 +1399,11 @@ do_migrate_range(unsigned long start_pfn, unsigned long end_pfn) page_is_file_cache(page)); page_is_file_cache(page)); } else { } else { if (__ratelimit(&migrate_rs)) { pr_warn("failed to isolate pfn %lx\n", pfn); pr_warn("failed to isolate pfn %lx\n", pfn); dump_page(page, "isolation failed"); dump_page(page, "isolation failed"); } } } put_page(page); put_page(page); } } if (!list_empty(&source)) { if (!list_empty(&source)) { Loading @@ -1408,10 +1412,12 @@ do_migrate_range(unsigned long start_pfn, unsigned long end_pfn) MIGRATE_SYNC, MR_MEMORY_HOTPLUG); MIGRATE_SYNC, MR_MEMORY_HOTPLUG); if (ret) { if (ret) { list_for_each_entry(page, &source, lru) { list_for_each_entry(page, &source, lru) { pr_warn("migrating pfn %lx failed ret:%d ", if (__ratelimit(&migrate_rs)) { pr_warn("migrating pfn %lx failed ret:%d\n", page_to_pfn(page), ret); page_to_pfn(page), ret); dump_page(page, "migration failure"); dump_page(page, "migration failure"); } } } putback_movable_pages(&source); putback_movable_pages(&source); } } } } Loading Loading
mm/memory_hotplug.c +11 −5 Original line number Original line Diff line number Diff line Loading @@ -1348,6 +1348,8 @@ do_migrate_range(unsigned long start_pfn, unsigned long end_pfn) struct page *page; struct page *page; int ret = 0; int ret = 0; LIST_HEAD(source); LIST_HEAD(source); static DEFINE_RATELIMIT_STATE(migrate_rs, DEFAULT_RATELIMIT_INTERVAL, DEFAULT_RATELIMIT_BURST); for (pfn = start_pfn; pfn < end_pfn; pfn++) { for (pfn = start_pfn; pfn < end_pfn; pfn++) { if (!pfn_valid(pfn)) if (!pfn_valid(pfn)) Loading Loading @@ -1397,9 +1399,11 @@ do_migrate_range(unsigned long start_pfn, unsigned long end_pfn) page_is_file_cache(page)); page_is_file_cache(page)); } else { } else { if (__ratelimit(&migrate_rs)) { pr_warn("failed to isolate pfn %lx\n", pfn); pr_warn("failed to isolate pfn %lx\n", pfn); dump_page(page, "isolation failed"); dump_page(page, "isolation failed"); } } } put_page(page); put_page(page); } } if (!list_empty(&source)) { if (!list_empty(&source)) { Loading @@ -1408,10 +1412,12 @@ do_migrate_range(unsigned long start_pfn, unsigned long end_pfn) MIGRATE_SYNC, MR_MEMORY_HOTPLUG); MIGRATE_SYNC, MR_MEMORY_HOTPLUG); if (ret) { if (ret) { list_for_each_entry(page, &source, lru) { list_for_each_entry(page, &source, lru) { pr_warn("migrating pfn %lx failed ret:%d ", if (__ratelimit(&migrate_rs)) { pr_warn("migrating pfn %lx failed ret:%d\n", page_to_pfn(page), ret); page_to_pfn(page), ret); dump_page(page, "migration failure"); dump_page(page, "migration failure"); } } } putback_movable_pages(&source); putback_movable_pages(&source); } } } } Loading