[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <a09bfe3a-87e4-f8ce-89bb-c5fde8cc33c9@redhat.com>
Date: Tue, 14 Feb 2023 12:58:39 +0100
From: David Hildenbrand <david@...hat.com>
To: Mike Rapoport <rppt@...nel.org>
Cc: Qi Zheng <zhengqi.arch@...edance.com>,
Qi Zheng <arch0.zheng@...il.com>,
Vlastimil Babka <vbabka@...e.cz>, akpm@...ux-foundation.org,
linux-mm@...ck.org, linux-kernel@...r.kernel.org,
Teng Hu <huteng.ht@...edance.com>,
Matthew Wilcox <willy@...radead.org>,
Mel Gorman <mgorman@...hsingularity.net>,
Oscar Salvador <osalvador@...e.de>,
Muchun Song <muchun.song@...ux.dev>,
Michal Hocko <mhocko@...nel.org>
Subject: Re: [PATCH] mm: page_alloc: don't allocate page from memoryless nodes
On 14.02.23 12:48, David Hildenbrand wrote:
> On 14.02.23 12:44, Mike Rapoport wrote:
>> (added x86 folks)
>>
>> On Tue, Feb 14, 2023 at 12:29:42PM +0100, David Hildenbrand wrote:
>>> On 14.02.23 12:26, Qi Zheng wrote:
>>>> On 2023/2/14 19:22, David Hildenbrand wrote:
>>>>>
>>>>> TBH, this is the first time I hear of NODE_MIN_SIZE and it seems to be a
>>>>> pretty x86 specific thing.
>>>>>
>>>>> Are we sure we want to get NODE_MIN_SIZE involved?
>>>>
>>>> Maybe add an arch_xxx() to handle it?
>>>
>>> I still haven't figured out what we want to achieve with NODE_MIN_SIZE at
>>> all. It smells like an arch-specific hack looking at
>>>
>>> "Don't confuse VM with a node that doesn't have the minimum amount of
>>> memory"
>>>
>>> Why shouldn't mm-core deal with that?
>>
>> Well, a node with <4M RAM is not very useful and bears all the overhead of
>> an extra live node.
>
> And totally not with 4.1M, haha.
>
> I really like the "Might fix boot" in the commit description.
>
>>
>> But, hey, why won't we just drop that '< NODE_MIN_SIZE' and let people with
>> weird HW configurations just live with this?
>
>
> ;)
>
Actually, remembering 09f49dca570a ("mm: handle uninitialized numa nodes
gracefully"), this might be the right thing to do. That commit assumes
that all offline nodes would get the pgdat allocated in
free_area_init(). So that we end up with an allocated pgdat for all
possible nodes. The reasoning IIRC was that we don't care about wasting
memory in weird VM setups.
CCing Michal.
--
Thanks,
David / dhildenb
Powered by blists - more mailing lists