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

Nishanth Aravamudan
2007-10-10T16:05:43Z

On 10.10.2007 [11:53:40 -0400], Lee Schermerhorn wrote:
> On Tue, 2007-10-09 at 16:40 +0100, Mel Gorman wrote:
> <snip>
> > ====
> > Subject: Use specified node ID with GFP_THISNODE if available
> >
> > It had been assumed that __GFP_THISNODE meant allocating from the local
> > node and only the local node. However, users of alloc_pages_node() may also
> > specify GFP_THISNODE. In this case, only the specified node should be used.
> > This patch will allocate pages only from the requested node when GFP_THISNODE
> > is used with alloc_pages_node().
> >
> > [nacc@us.ibm.com: Detailed analysis of problem]
> > Found-by: Lee Schermerhorn <Lee.Schermerhorn@hp.com>
> > Signed-off-by: Mel Gorman <mel@csn.ul.ie>
> >
> <snip>
>
> Mel: I applied this patch [to your v8 series--the most recent, I
> think?] and it does fix the problem. However, now I'm tripping over
> this warning in __alloc_pages_nodemask:
>
> /* Specifying both __GFP_THISNODE and nodemask is stupid. Warn user */
> WARN_ON(gfp_mask & __GFP_THISNODE);
>
> for each huge page allocated. Rather slow as my console is a virtual
> serial line and the warning includes the stack traceback.
>
> I think we want to just drop this warning, but maybe you have a tighter
> condition that you want to warn about?

Sigh, sorry Mel. I see this too on my box. I purely checked the
functionality and didn't think to check the logs, as the tests worked :/

I think it's quite clear that the WARN_ON() makes no sense now, since
alloc_pages_node() now calls __alloc_pages_nodemask().

-Nish

--
Nishanth Aravamudan <nacc@us.ibm.com>
IBM Linux Technology Center