Re: [PATCH] mm, memory_hotplug: Don't bail out in do_migrate_range prematurely

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 11.12.18 09:57, osalvador@xxxxxxx wrote:
> On 2018-12-11 09:50, Oscar Salvador wrote:
> 
>> -		} else {
>> -			pr_warn("failed to isolate pfn %lx\n", pfn);
>> -			dump_page(page, "isolation failed");
>> -			put_page(page);
>> -			/* Because we don't have big zone->lock. we should
>> -			   check this again here. */
>> -			if (page_count(page)) {
>> -				not_managed++;
>> -				ret = -EBUSY;
>> -				break;
> 
> I forgot that here we should at least leave the put_page().
> But leave also the dump_page() and the pr_warn().
> 
> --- a/mm/memory_hotplug.c
> +++ b/mm/memory_hotplug.c
> @@ -1394,6 +1394,10 @@ do_migrate_range(unsigned long start_pfn, 
> unsigned long end_pfn)
>                                  inc_node_page_state(page, 
> NR_ISOLATED_ANON +
>                                                      
> page_is_file_cache(page));
> 
> +               } else {
> +                       pr_warn("failed to isolate pfn %lx\n", pfn);
> +                       dump_page(page, "isolation failed");
> +                       put_page(page);

When we're stuck with one problematic page, and we keep looping over
that function, won't that print out *way too much* messages? Shouldn't
that be rate limited somehow (same applies to other callers in this file)

>                  }
>          }
>          if (!list_empty(&source)) {
> 


-- 

Thanks,

David / dhildenb




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux