lkml.org 
[lkml]   [2015]   [Aug]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [Patch V3 3/9] sgi-xp: Replace cpu_to_node() with cpu_to_mem() to support memoryless node
From
Date
On 2015/8/20 8:02, David Rientjes wrote:
> On Wed, 19 Aug 2015, Jiang Liu wrote:
>
>>> Why not simply fix build_zonelists_node() so that the __GFP_THISNODE
>>> zonelists are set up to reference the zones of cpu_to_mem() for memoryless
>>> nodes?
>>>
>>> It seems much better than checking and maintaining every __GFP_THISNODE
>>> user to determine if they are using a memoryless node or not. I don't
>>> feel that this solution is maintainable in the longterm.
>> Hi David,
>> There are some usage cases, such as memory migration,
>> expect the page allocator rejecting memory allocation requests
>> if there is no memory on local node. So we have:
>> 1) alloc_pages_node(cpu_to_node(), __GFP_THISNODE) to only allocate
>> memory from local node.
>> 2) alloc_pages_node(cpu_to_mem(), __GFP_THISNODE) to allocate memory
>> from local node or from nearest node if local node is memoryless.
>>
>
> Right, so do you think it would be better to make the default zonelists be
> setup so that cpu_to_node()->zonelists == cpu_to_mem()->zonelists and then
> individual callers that want to fail for memoryless nodes check
> populated_zone() themselves?
Hi David,
Great idea:) I think that means we are going to kill the
concept of memoryless node, and we only need to specially handle
a few callers who really care about whether there is memory on
local node.
Then I need some time to audit all usages of __GFP_THISNODE
and update you whether it's doable.
Thanks!
Gerry



\
 
 \ /
  Last update: 2015-08-20 08:41    [W:0.099 / U:0.372 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site