From: Wei Yang <richard.weiyang@gmail.com>
To: Michal Hocko <mhocko@suse.com>
Cc: Mike Rapoport <rppt@kernel.org>,
Andrew Morton <akpm@linux-foundation.org>,
linux-mm@kvack.org, LKML <linux-kernel@vger.kernel.org>,
David Hildenbrand <david@redhat.com>,
Alexey Makhalov <amakhalov@vmware.com>,
Dennis Zhou <dennis@kernel.org>,
Eric Dumazet <eric.dumazet@gmail.com>,
Oscar Salvador <osalvador@suse.de>, Tejun Heo <tj@kernel.org>,
Christoph Lameter <cl@linux.com>, Nico Pache <npache@redhat.com>,
Wei Yang <richard.weiyang@gmail.com>,
Rafael Aquini <raquini@redhat.com>
Subject: Re: [PATCH 2/6] mm: handle uninitialized numa nodes gracefully
Date: Tue, 1 Feb 2022 02:41:19 +0000 [thread overview]
Message-ID: <20220201024119.2ailcw4rp5thambz@master> (raw)
In-Reply-To: <YfKwjAlPW2kJUv5w@dhcp22.suse.cz>
On Thu, Jan 27, 2022 at 03:47:40PM +0100, Michal Hocko wrote:
>[...]
>> > +
>> > + /* Allocator not initialized yet */
>> > + pgdat = arch_alloc_nodedata(nid);
>> > + if (!pgdat) {
>> > + pr_err("Cannot allocate %zuB for node %d.\n",
>> > + sizeof(*pgdat), nid);
>> > + continue;
>> > + }
>> > + arch_refresh_nodedata(nid, pgdat);
>> > + free_area_init_memoryless_node(nid);
free_area_init_memoryless_node() seems to be defined used out side
page_alloc.c? It just call free_area_init_node() directly. We want to use the
name to reflect the effect?
>> > + /*
>> > + * not marking this node online because we do not want to
>> > + * confuse userspace by sysfs files/directories for node
>> > + * without any memory attached to it (see topology_init)
>> > + * The pgdat will get fully initialized when a memory is
>> > + * hotpluged into it by hotadd_init_pgdat
>> > + */
Hmm... which following step would mark the node online? On x86, the node is
onlined in alloc_node_date(). This is not onlined here.
>> > + continue;
>>
>> This can be made slightly more concise if we fall through after
>> arch_refresh_nodedata(), e.g. something like
>>
>> ...
>>
>> arch_refresh_nodedata(nid, pgdat);
>> }
>>
>> pgdat = NODE_DATA(nid);
>> free_area_init_node(nid);
>>
>> /*
>> * Do not mark memoryless node online because we do not want to
>> * confuse userspace by sysfs files/directories for node
>> * without any memory attached to it (see topology_init)
>> * The pgdat will get fully initialized when a memory is
>> * hotpluged into it by hotadd_init_pgdat
>> */
>> if (!pgdat->node_present_pages)
>> continue;
>>
>> but I don't feel strongly about it.
>
>I do not have strong preference either way. Unless this is considered
>better by more people I would stick with what I have.
I agree with Mike.
>--
>Michal Hocko
>SUSE Labs
--
Wei Yang
Help you, Help me
next prev parent reply other threads:[~2022-02-01 2:41 UTC|newest]
Thread overview: 41+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20220127085305.20890-1-mhocko@kernel.org>
[not found] ` <20220127085305.20890-2-mhocko@kernel.org>
2022-01-27 12:27 ` [PATCH 1/6] mm, memory_hotplug: make arch_alloc_nodedata independent on CONFIG_MEMORY_HOTPLUG David Hildenbrand
2022-01-27 13:36 ` Mike Rapoport
2022-01-28 6:18 ` Oscar Salvador
2022-02-01 2:13 ` Wei Yang
[not found] ` <20220127085305.20890-4-mhocko@kernel.org>
2022-01-27 12:42 ` [PATCH 3/6] mm, memory_hotplug: drop arch_free_nodedata David Hildenbrand
2022-01-27 13:37 ` Mike Rapoport
2022-01-28 6:29 ` Oscar Salvador
2022-02-01 2:41 ` Wei Yang
[not found] ` <20220127085305.20890-3-mhocko@kernel.org>
2022-01-27 12:41 ` [PATCH 2/6] mm: handle uninitialized numa nodes gracefully David Hildenbrand
2022-01-27 14:50 ` Michal Hocko
2022-01-27 13:37 ` Mike Rapoport
2022-01-27 14:47 ` Michal Hocko
2022-01-27 15:04 ` Mike Rapoport
2022-02-01 2:41 ` Wei Yang [this message]
2022-02-01 9:54 ` Michal Hocko
2022-02-03 0:21 ` Wei Yang
2022-02-03 7:23 ` Mike Rapoport
2022-02-03 8:27 ` David Hildenbrand
2022-02-03 9:08 ` Mike Rapoport
2022-02-03 9:11 ` David Hildenbrand
2022-02-03 9:19 ` Michal Hocko
2022-02-03 9:21 ` David Hildenbrand
2022-02-03 8:39 ` Michal Hocko
2022-02-04 22:54 ` Andrew Morton
2022-01-28 6:27 ` Oscar Salvador
2022-01-31 10:34 ` Michal Hocko
[not found] ` <20220127085305.20890-5-mhocko@kernel.org>
2022-01-27 12:46 ` [PATCH 4/6] mm, memory_hotplug: reorganize new pgdat initialization David Hildenbrand
2022-01-27 14:44 ` Michal Hocko
2022-02-17 10:40 ` Oscar Salvador
2022-01-27 13:39 ` Mike Rapoport
2022-01-27 14:45 ` Michal Hocko
2022-01-28 10:51 ` Oscar Salvador
2022-02-01 2:42 ` Wei Yang
[not found] ` <20220127085305.20890-6-mhocko@kernel.org>
2022-01-27 12:47 ` [PATCH 5/6] mm: make free_area_init_node aware of memory less nodes David Hildenbrand
2022-01-27 13:34 ` Mike Rapoport
2022-01-28 10:59 ` Oscar Salvador
2022-02-01 2:43 ` Wei Yang
[not found] ` <20220127085305.20890-7-mhocko@kernel.org>
2022-01-27 12:50 ` [PATCH 6/6] memcg: do not tweak node in alloc_mem_cgroup_per_node_info David Hildenbrand
2022-01-28 11:01 ` Oscar Salvador
2022-02-01 2:45 ` Wei Yang
2022-02-01 9:51 ` Michal Hocko
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20220201024119.2ailcw4rp5thambz@master \
--to=richard.weiyang@gmail.com \
--cc=akpm@linux-foundation.org \
--cc=amakhalov@vmware.com \
--cc=cl@linux.com \
--cc=david@redhat.com \
--cc=dennis@kernel.org \
--cc=eric.dumazet@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=mhocko@suse.com \
--cc=npache@redhat.com \
--cc=osalvador@suse.de \
--cc=raquini@redhat.com \
--cc=rppt@kernel.org \
--cc=tj@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.