lkml.org 
[lkml]   [2013]   [Jun]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [Part1 PATCH v5 13/22] x86, mm, numa: Use numa_meminfo to check node_map_pfn alignment
On Thu, Jun 13, 2013 at 09:03:00PM +0800, Tang Chen wrote:
> From: Yinghai Lu <yinghai@kernel.org>
>
> We could use numa_meminfo directly instead of memblock nid in
> node_map_pfn_alignment().
>
> So we could do setting memblock nid later and only do it once
> for successful path.
>
> -v2: according to tj, separate moving to another patch.

How about something like,

Subject: x86, mm, NUMA: Use numa_meminfo instead of memblock in node_map_pfn_alignment()

When sparsemem is used and page->flags doesn't have enough space to
carry both the sparsemem section and node ID, NODE_NOT_IN_PAGE_FLAGS
is set and the node is determined from section. This requires that
the NUMA nodes aren't more granular than sparsemem sections.
node_map_pfn_alignment() is used to determine the maximum NUMA
inter-node alignment which can distinguish all nodes to verify the
above condition.

The function currently assumes the NUMA node maps are populated and
sorted and uses for_each_mem_pfn_range() to iterate memory regions.
We want this to happen way earlier to support memory hotplug (maybe
elaborate a bit more here).

This patch updates node_map_pfn_alignment() so that it iterates over
numa_meminfo instead and moves its invocation before memory regions
are registered to memblock and node maps in numa_register_memblks().
This will help memory hotplug (how...) and as a bonus we register
memory regions only if the alignment check succeeds rather than
registering and then failing.

Also, the comment on top of node_map_pfn_alignment() needs to be
updated, right?

Thanks.

--
tejun


\
 
 \ /
  Last update: 2013-06-18 04:21    [W:0.406 / U:2.760 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site