Re: [PATCH v1 5/5] mm/memory_hotplug: print only with DEBUG_VM in online/offline_pages()

From: David Hildenbrand
Date: Mon Aug 20 2018 - 05:49:29 EST


On 20.08.2018 11:45, David Hildenbrand wrote:
> On 17.08.2018 10:18, Oscar Salvador wrote:
>>> failed_addition:
>>> +#ifdef CONFIG_DEBUG_VM
>>> pr_debug("online_pages [mem %#010llx-%#010llx] failed\n",
>>> (unsigned long long) pfn << PAGE_SHIFT,
>>> (((unsigned long long) pfn + nr_pages) << PAGE_SHIFT) - 1);
>>> +#endif
>>
>> I have never been sure about this.
>> IMO, if I fail to online pages, I want to know I failed.
>> I think that pr_err would be better than pr_debug and without CONFIG_DEBUG_VM.
>
> I consider both error messages only partially useful, as
>
> 1. They only catch a subset of actual failures the function handles.
> E.g. onlining will not report an error message if the memory notifier
> failed.

That statement was wrong. It is rather in offline_pages, errors from
start_isolate_page_range() are ignored.

> 2. Onlining/Offlining is usually (with exceptions - e.g. onlining during
> add_memory) triggered from user space, where we present an error
> code. At any times, the actual state of the memory blocks can be
> observed by querying the state.
>
> I would even vote for dropping the two error case messages completely.
> At least I don't consider them very useful.
>
>>
>> But at least, if not, envolve it with a CONFIG_DEBUG_VM, but change pr_debug to pr_info.
>>
>>> +#ifdef CONFIG_DEBUG_VM
>>> pr_debug("memory offlining [mem %#010llx-%#010llx] failed\n",
>>> (unsigned long long) start_pfn << PAGE_SHIFT,
>>> ((unsigned long long) end_pfn << PAGE_SHIFT) - 1);
>>> +#endif
>>
>> Same goes here.
>>
>> Thanks
>>
>
>


--

Thanks,

David / dhildenb