[PATCH v3 4/6] mm: Demote warning message in vmemmap_verify() to debug level
Kefeng Wang
wangkefeng.wang at huawei.com
Fri Jun 10 02:35:52 PDT 2022
On 2022/6/9 16:13, mawupeng wrote:
>
>
> 在 2022/6/8 18:00, Anshuman Khandual 写道:
>>
>>
>> On 6/8/22 06:56, mawupeng wrote:
>>>
>>>
>>> 在 2022/6/7 20:25, David Hildenbrand 写道:
>>>> On 07.06.22 11:38, Wupeng Ma wrote:
>>>>> From: Ma Wupeng <mawupeng1 at huawei.com>
>>>>>
>>>>> For a system only have limited mirrored memory or some numa node
>>>>> without
>>>>> mirrored memory, the per node vmemmap page_structs prefer to allocate
>>>>> memory from mirrored region, which will lead to vmemmap_verify() in
>>>>> vmemmap_populate_basepages() report lots of warning message.
>>>>>
>>>>> This patch demote the "potential offnode page_structs" warning
>>>>> messages
>>>>> to debug level to avoid a very long print during bootup.
>>>>>
>>>>> Signed-off-by: Ma Wupeng <mawupeng1 at huawei.com>
>>>>> ---
>>>>> mm/sparse-vmemmap.c | 2 +-
>>>>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>>>>
>>>>> diff --git a/mm/sparse-vmemmap.c b/mm/sparse-vmemmap.c
>>>>> index f4fa61dbbee3..78debdb89eb1 100644
>>>>> --- a/mm/sparse-vmemmap.c
>>>>> +++ b/mm/sparse-vmemmap.c
>>>>> @@ -528,7 +528,7 @@ void __meminit vmemmap_verify(pte_t *pte, int
>>>>> node,
>>>>> int actual_node = early_pfn_to_nid(pfn);
>>>>> if (node_distance(actual_node, node) > LOCAL_DISTANCE)
>>>>> - pr_warn("[%lx-%lx] potential offnode page_structs\n",
>>>>> + pr_debug("[%lx-%lx] potential offnode page_structs\n",
>>>>> start, end - 1);
>>>>> }
>>>>
>>>> This will possibly hide it in environments where this might indeed
>>>> indicate performance issues.
>>>>
>>>> What about a pr_warn_once()?
>>>>
>>>
>>> Sure.
>>>
>>> This will works. We can certainly use a pr_warn_once().
>>
>> Why not pr_warn_ratelimited() like in the previous patch ?
>
> Function vmemmap_populate_basepages() is used to populate base pages.
> System with huge memory will produce lots lots of warning message
> during this populate process even with ratelimited. This may lead to slow
> startup.
I think pr_warn_once is better, the memblock_alloc fallback is not frequent,
but vmemmap_verify will verify each memory and print a lot.
>
> Thanks for reviewing.
>
>> .
> .
More information about the linux-arm-kernel
mailing list