Re: [PATCH] mm: memory_hotplug: put migration failure information under DEBUG_VM

From: David Hildenbrand
Date: Mon Nov 23 2020 - 09:10:23 EST


On 23.11.20 15:03, Charan Teja Reddy wrote:
> When the pages are failed to get isolate or migrate, the page owner
> information along with page info is dumped. If there are continuous
> failures in migration(say page is pinned) or isolation, the log buffer
> is simply getting flooded with the page owner information. As most of
> the times page info is sufficient to know the causes for failures of
> migration or isolation, place the page owner information under DEBUG_VM.
>
> Signed-off-by: Charan Teja Reddy <charante@xxxxxxxxxxxxxx>
> ---
> mm/memory_hotplug.c | 10 ++++++++--
> 1 file changed, 8 insertions(+), 2 deletions(-)
>
> diff --git a/mm/memory_hotplug.c b/mm/memory_hotplug.c
> index 63b2e46..f48f30d 100644
> --- a/mm/memory_hotplug.c
> +++ b/mm/memory_hotplug.c
> @@ -1326,7 +1326,10 @@ do_migrate_range(unsigned long start_pfn, unsigned long end_pfn)
>
> } else {
> pr_warn("failed to isolate pfn %lx\n", pfn);
> - dump_page(page, "isolation failed");
> + __dump_page(page, "isolation failed");
> +#if defined(CONFIG_DEBUG_VM)
> + dump_page_owner(page);
> +#endif
> }
> put_page(page);
> }
> @@ -1357,7 +1360,10 @@ do_migrate_range(unsigned long start_pfn, unsigned long end_pfn)
> list_for_each_entry(page, &source, lru) {
> pr_warn("migrating pfn %lx failed ret:%d ",
> page_to_pfn(page), ret);
> - dump_page(page, "migration failure");
> + __dump_page(page, "migration failure");
> +#if defined(CONFIG_DEBUG_VM)
> + dump_page_owner(page);
> +#endif
> }
> putback_movable_pages(&source);
> }
>

It might also make sense to provide an explicit opt-in whether to
pr_warn/dump at all. Most user simply don't care, yet dmesg gets flooded.

Acked-by: David Hildenbrand <david@xxxxxxxxxx>

--
Thanks,

David / dhildenb