From: Paul Mundt <lethal@linux-sh.org>
To: Christoph Lameter <clameter@sgi.com>
Cc: Andrew Morton <akpm@linux-foundation.org>,
linux-mm@kvack.org, ak@suse.de, hugh@veritas.com,
lee.schermerhorn@hp.com, mpm@selenic.com
Subject: Re: [PATCH] numa: mempolicy: dynamic interleave map for system init.
Date: Fri, 8 Jun 2007 15:05:08 +0900 [thread overview]
Message-ID: <20070608060508.GA13727@linux-sh.org> (raw)
In-Reply-To: <Pine.LNX.4.64.0706072123560.27441@schroedinger.engr.sgi.com>
On Thu, Jun 07, 2007 at 09:27:01PM -0700, Christoph Lameter wrote:
> On Fri, 8 Jun 2007, Paul Mundt wrote:
>
> > Node 1 SUnreclaim: 8 kB
>
> > So at least that gets back the couple of slab pages!
>
> Hmmmm.. is that worth it? The patch is not right btw. There is still the
> case that new_slab can acquire a page on the wrong node and since we are
> not setup to allow that node in SLUB we will crash.
>
Well, every page we can get back is a win in this situation, since we're
talking about individual pages being used by applications. The other 56k
is a bit more problematic, but that's something I'd like to narrow down
as well. I don't mind giving up a chunk of the node as long as the
majority of it is usable for applications, but certainly every page we
can get back helps.
> This now gets a bit ugly. In order to avoid that situation we check
> first if the node is allowed. If not then we simply ask for an alloc on
> the first node.
>
> But that may still make the page allocator fall back. If that happens then
> we redo the allocation with GFP_THISNODE to force an allocation on the
> first node or fail.
>
This patch works fine for the few cases I've tried at least.
> I think we could do better by constructing a custom zonelist but that will
> be even more special casing.
>
I don't know if a custom zonelist is worth the trouble. For the common
asymmetric case, you could at least infer that ZONE_NORMAL is the only
thing populated per node (well, small nodes other than node 0). If you
mean just creating the zonelist from the range of allowable SLUB nodes,
that could work.
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
next prev parent reply other threads:[~2007-06-08 6:05 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-06-07 1:17 Paul Mundt
2007-06-08 1:01 ` Andrew Morton
2007-06-08 2:47 ` Christoph Lameter
2007-06-08 3:01 ` Andrew Morton
2007-06-08 3:11 ` Christoph Lameter
2007-06-08 3:25 ` Paul Mundt
2007-06-08 3:49 ` Christoph Lameter
2007-06-08 4:13 ` Paul Mundt
2007-06-08 4:27 ` Christoph Lameter
2007-06-08 6:05 ` Paul Mundt [this message]
2007-06-08 6:09 ` Christoph Lameter
2007-06-08 6:27 ` Paul Mundt
2007-06-08 6:43 ` Christoph Lameter
2007-06-08 14:50 ` Matt Mackall
2007-06-12 2:36 ` Nick Piggin
2007-06-12 9:43 ` Paul Mundt
2007-06-12 15:32 ` Matt Mackall
2007-06-13 2:10 ` Nick Piggin
2007-06-13 3:12 ` Matt Mackall
2007-06-13 2:53 ` Paul Mundt
2007-06-13 3:16 ` Matt Mackall
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20070608060508.GA13727@linux-sh.org \
--to=lethal@linux-sh.org \
--cc=ak@suse.de \
--cc=akpm@linux-foundation.org \
--cc=clameter@sgi.com \
--cc=hugh@veritas.com \
--cc=lee.schermerhorn@hp.com \
--cc=linux-mm@kvack.org \
--cc=mpm@selenic.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox