login
Header Space

 
 

Re: [PATCH 6/6] Use one zonelist that is filtered by nodemask

Score:
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: Mel Gorman <mel@...>
Cc: <akpm@...>, <Lee.Schermerhorn@...>, <linux-kernel@...>, <linux-mm@...>, <rientjes@...>, <kamezawa.hiroyu@...>, <clameter@...>
Date: Monday, October 8, 2007 - 9:11 pm

On 28.09.2007 [15:25:27 +0100], Mel Gorman wrote:

<snip>


[Reordering the chunks to make my comments a little more logical]

<snip>


This is alloc_pages_node(), and converting the nid to a zonelist means
that lower levels (specifically __alloc_pages() here) are not aware of
nids, as far as I can tell. This isn't a change, I just want to make
sure I understand...

<snip>


<snip>

So alloc_pages_node() calls here and for THISNODE allocations, we go ask
nodemask_thisnode() for a nodemask...


<snip>

And nodemask_thisnode() always gives us a nodemask with only the node
the current process is running on set, I think?

That seems really wrong -- and would explain what Lee was seeing while
using my patches for the hugetlb pool allocator to use THISNODE
allocations. All the allocations would end up coming from whatever node
the process happened to be running on. This obviously messes up hugetlb
accounting, as I rely on THISNODE requests returning NULL if they go
off-node.

I'm not sure how this would be fixed, as __alloc_pages() no longer has
the nid to set in the mask.

Am I wrong in my analysis?

Thanks,
Nish

-- 
Nishanth Aravamudan <nacc@us.ibm.com>
IBM Linux Technology Center
-
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
Re: [PATCH 5/6] Filter based on a nodemask as well as a gfp_..., Lee Schermerhorn, (Fri Sep 28, 11:37 am)
Re: [PATCH 6/6] Use one zonelist that is filtered by nodemask, Nishanth Aravamudan, (Mon Oct 8, 9:11 pm)
Re: [PATCH 6/6] Use one zonelist that is filtered by nodemask, Lee Schermerhorn, (Wed Oct 10, 11:53 am)
Re: [PATCH 6/6] Use one zonelist that is filtered by nodemask, Nishanth Aravamudan, (Wed Oct 10, 12:05 pm)
Re: [PATCH 6/6] Use one zonelist that is filtered by nodemask, Nishanth Aravamudan, (Tue Oct 9, 2:12 pm)
Re: [PATCH 6/6] Use one zonelist that is filtered by nodemask, Nishanth Aravamudan, (Tue Oct 9, 12:25 pm)
Re: [PATCH 6/6] Use one zonelist that is filtered by nodemask, Christoph Lameter, (Tue Oct 9, 2:47 pm)
Re: [PATCH 6/6] Use one zonelist that is filtered by nodemask, Christoph Lameter, (Mon Oct 8, 9:56 pm)
Re: [PATCH 6/6] Use one zonelist that is filtered by nodemask, Nishanth Aravamudan, (Mon Oct 8, 11:17 pm)
speck-geostationary