From: Nick Piggin <npiggin@suse.de>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>,
Pekka Enberg <penberg@cs.helsinki.fi>,
Heiko Carstens <heiko.carstens@de.ibm.com>,
linux-kernel@vger.kernel.org, akpm@linux-foundation.org,
cl@linux-foundation.org, kamezawa.hiroyu@jp.fujitsu.com,
lizf@cn.fujitsu.com, mingo@elte.hu, yinghai@kernel.org
Subject: Re: [GIT PULL v2] Early SLAB fixes for 2.6.31
Date: Wed, 17 Jun 2009 18:17:44 +0200 [thread overview]
Message-ID: <20090617161744.GA22192@wotan.suse.de> (raw)
In-Reply-To: <alpine.LFD.2.01.0906170853580.16802@localhost.localdomain>
On Wed, Jun 17, 2009 at 09:01:16AM -0700, Linus Torvalds wrote:
>
>
> On Wed, 17 Jun 2009, Nick Piggin wrote:
> >
> > In some cases perhaps it is difficult. In others it should be
> > pretty natural. Lots of memory allocating paths pass gfp
> > a long way down the stack.
>
> I agree that some cases would be pretty natural. In fact, that's what we
> started out doing. On the x86 side, we didn't have a lot of issues in
> testing, and we fixed them up by using GFP_NOWAIT (see for example
> cpupri_init() in kernel/sched_cpupri.c, or init_irq_default_affinity() in
> kernel/irq/handle.c - both of which were fixed up in that phase).
>
> Those paths, in fact, in general already had "bootmem" flags etc. And x86
> doesn't need to initialize a lot of state at bootup.
Yes.
> Then Ben happened, and crazy PPC ioremap crap.
OK. I agree ioremap probably would get painful. Are they doing that
too early anyway? From your email it sounds like maybe they are.
> So the problem is exactly that it was perfectly natural to pass down a gfp
> or other flag in _some_ cases. And then in a few cases it's much more
> painful.
Sure... I understand, and I don't want to force people to add
more nasty code to work around these. I am fine with the fix
to slab for now... I was just hoping maybe we don't put the
rule in place that all early boot allocations shall use GFP_KERNEL.
I'd like to see the allocation context passed down (including via
code that knows when interrupts are off in early boot) if possible
without ttoo much ugliness.
next prev parent reply other threads:[~2009-06-17 16:17 UTC|newest]
Thread overview: 79+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-06-12 13:25 [GIT PULL] Early SLAB fixes for 2.6.31 Pekka J Enberg
2009-06-12 13:38 ` Benjamin Herrenschmidt
2009-06-12 13:45 ` Pekka Enberg
2009-06-12 14:30 ` Christoph Lameter
2009-06-12 16:16 ` [GIT PULL v2] " Pekka J Enberg
2009-06-12 17:30 ` Christoph Lameter
2009-06-12 21:46 ` Benjamin Herrenschmidt
2009-06-15 6:46 ` Nick Piggin
2009-06-15 9:10 ` Pekka Enberg
2009-06-15 9:38 ` Nick Piggin
2009-06-15 14:43 ` Christoph Lameter
2009-06-14 7:12 ` Pekka J Enberg
2009-06-15 14:55 ` Christoph Lameter
2009-06-15 14:58 ` Pekka Enberg
2009-06-15 15:05 ` Christoph Lameter
2009-06-15 15:11 ` Pekka Enberg
2009-06-15 15:27 ` Pekka Enberg
2009-06-15 15:51 ` Christoph Lameter
2009-06-15 15:57 ` Pekka Enberg
2009-06-15 16:08 ` Christoph Lameter
2009-06-15 17:15 ` Linus Torvalds
2009-06-15 18:19 ` Pekka Enberg
2009-06-15 15:48 ` Christoph Lameter
2009-06-15 8:18 ` Heiko Carstens
2009-06-15 8:26 ` Nick Piggin
2009-06-15 8:32 ` Pekka Enberg
2009-06-15 8:52 ` Nick Piggin
2009-06-15 9:08 ` Pekka Enberg
2009-06-15 10:20 ` Heiko Carstens
2009-06-15 10:21 ` Pekka Enberg
2009-06-15 10:31 ` Nick Piggin
2009-06-15 10:36 ` Pekka Enberg
2009-06-15 9:10 ` Pekka Enberg
2009-06-15 9:41 ` Nick Piggin
2009-06-15 9:48 ` Pekka Enberg
2009-06-15 9:59 ` Nick Piggin
2009-06-15 9:51 ` Benjamin Herrenschmidt
2009-06-15 9:57 ` Pekka Enberg
2009-06-15 10:27 ` Nick Piggin
2009-06-15 10:45 ` Benjamin Herrenschmidt
2009-06-15 11:23 ` Nick Piggin
2009-06-15 12:38 ` Hugh Dickins
2009-06-15 13:07 ` Pekka Enberg
2009-06-16 4:57 ` Nick Piggin
2009-06-16 5:28 ` Benjamin Herrenschmidt
2009-06-16 5:36 ` Nick Piggin
2009-06-16 15:12 ` Christoph Lameter
2009-06-16 15:59 ` Nick Piggin
2009-06-15 21:31 ` Benjamin Herrenschmidt
2009-06-16 4:46 ` Nick Piggin
2009-06-16 5:18 ` Benjamin Herrenschmidt
2009-06-16 5:29 ` Nick Piggin
2009-06-16 18:45 ` Linus Torvalds
2009-06-17 7:47 ` Nick Piggin
2009-06-17 16:01 ` Linus Torvalds
2009-06-17 16:17 ` Nick Piggin [this message]
2009-06-17 21:39 ` Benjamin Herrenschmidt
2009-06-15 10:12 ` Nick Piggin
2009-06-15 10:39 ` Benjamin Herrenschmidt
2009-06-15 11:22 ` Nick Piggin
2009-06-15 11:28 ` Nick Piggin
2009-06-15 11:38 ` Nick Piggin
2009-06-15 21:37 ` Benjamin Herrenschmidt
2009-06-16 4:42 ` Nick Piggin
2009-06-15 21:32 ` Benjamin Herrenschmidt
2009-06-16 15:08 ` Christoph Lameter
2009-06-16 19:10 ` Linus Torvalds
2009-06-16 19:23 ` Christoph Lameter
2009-06-16 19:33 ` Linus Torvalds
2009-06-16 19:48 ` Christoph Lameter
2009-06-17 5:18 ` Pekka Enberg
2009-06-17 16:45 ` Linus Torvalds
2009-06-18 2:00 ` Benjamin Herrenschmidt
2009-06-18 3:24 ` Benjamin Herrenschmidt
2009-06-18 6:01 ` Pekka Enberg
2009-06-18 8:52 ` Benjamin Herrenschmidt
2009-06-16 21:58 ` Benjamin Herrenschmidt
2009-06-16 22:06 ` Linus Torvalds
2009-06-16 22:51 ` Benjamin Herrenschmidt
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=20090617161744.GA22192@wotan.suse.de \
--to=npiggin@suse.de \
--cc=akpm@linux-foundation.org \
--cc=benh@kernel.crashing.org \
--cc=cl@linux-foundation.org \
--cc=heiko.carstens@de.ibm.com \
--cc=kamezawa.hiroyu@jp.fujitsu.com \
--cc=linux-kernel@vger.kernel.org \
--cc=lizf@cn.fujitsu.com \
--cc=mingo@elte.hu \
--cc=penberg@cs.helsinki.fi \
--cc=torvalds@linux-foundation.org \
--cc=yinghai@kernel.org \
/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