From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from qmta14.emeryville.ca.mail.comcast.net (qmta14.emeryville.ca.mail.comcast.net [IPv6:2001:558:fe2d:44:76:96:27:212]) by ozlabs.org (Postfix) with ESMTP id 1E3BF2C00B0 for ; Tue, 25 Feb 2014 07:02:54 +1100 (EST) Date: Mon, 24 Feb 2014 13:54:35 -0600 (CST) From: Christoph Lameter To: Joonsoo Kim Subject: Re: [RFC PATCH 2/3] topology: support node_numa_mem() for determining the fallback node In-Reply-To: <20140224050851.GB14814@lge.com> Message-ID: References: <20140207054819.GC28952@lge.com> <20140210191321.GD1558@linux.vnet.ibm.com> <20140211074159.GB27870@lge.com> <20140217065257.GD3468@lge.com> <20140224050851.GB14814@lge.com> Content-Type: TEXT/PLAIN; charset=US-ASCII Cc: Han Pingtian , Nishanth Aravamudan , Matt Mackall , Pekka Enberg , Linux Memory Management List , Paul Mackerras , Anton Blanchard , David Rientjes , linuxppc-dev@lists.ozlabs.org, Wanpeng Li List-Id: Linux on PowerPC Developers Mail List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , On Mon, 24 Feb 2014, Joonsoo Kim wrote: > > It will not common get there because of the tracking. Instead a per cpu > > object will be used. > > > get_partial_node() always fails even if there are some partial slab on > > > memoryless node's neareast node. > > > > Correct and that leads to a page allocator action whereupon the node will > > be marked as empty. > > Why do we need to request to a page allocator if there is partial slab? > Checking whether node is memoryless or not is really easy, so we don't need > to skip this. To skip this is suboptimal solution. The page allocator action is also used to determine to which other node we should fall back if the node is empty. So we need to call the page allocator when the per cpu slab is exhaused with the node of the memoryless node to get memory from the proper fallback node.