From: Christoph Lameter <clameter@sgi.com>
To: Andrew Morton <akpm@linux-foundation.org>
Cc: linux-mm@kvack.org, Ingo Molnar <mingo@elte.hu>,
thomas.jarosch@intra2net.com
Subject: Re: [patch 1/1] alloc_pages(): permit get_zeroed_page(GFP_ATOMIC) from interrupt context
Date: Mon, 27 Aug 2007 16:48:47 -0700 (PDT) [thread overview]
Message-ID: <Pine.LNX.4.64.0708271644001.21218@schroedinger.engr.sgi.com> (raw)
In-Reply-To: <20070827164050.64af7153.akpm@linux-foundation.org>
On Mon, 27 Aug 2007, Andrew Morton wrote:
> > kmap_atomic is a
> > function to be used in atomic context. I.e. interrupts. Nested by
> > definition. It is broken as is since it BUG()s on a legitimate nested
> > call.
>
> Is it broken? Dunno. It's a bit silly to run kmap_atomic() against a page
> which the caller *knows* cannot be a highmem page.
So far we allow running kmap_atomic against a non-highmem page and
kmap_atomic contains code to deal with that case.
> > Would that not mean leaving kmap_atomic broken on i386? Before Ingo's
> > commit things were fine. Revert the commit and there is no need
> > to change core code.
>
> If we revert the commit we lose a bit of debug support.
>
> We could move the assert to after we've checked for PageHighmem, but then
> we'd fail to detect a bug if the nested caller happened to get a lowmem
> page for a __GFP_HIGHMEM allocation.
We will ultimately detect it if he gets that type of page. Like many
other checks in the code it may only trigger sometimes. Reverting
656dad312fb41ed95ef08325e9df9bece3aacbbb will get us to a known good
situation that also triggers the bug.
--
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>
prev parent reply other threads:[~2007-08-27 23:48 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-08-23 21:07 akpm, Andrew Morton
2007-08-27 20:13 ` Christoph Lameter
2007-08-27 20:33 ` Andrew Morton
2007-08-27 21:00 ` Christoph Lameter
2007-08-27 21:04 ` Andrew Morton
2007-08-27 21:20 ` Christoph Lameter
2007-08-27 21:32 ` Christoph Lameter
2007-08-27 21:34 ` Andrew Morton
2007-08-27 21:43 ` Christoph Lameter
2007-08-27 22:11 ` Andrew Morton
2007-08-27 22:12 ` Christoph Lameter
2007-08-27 22:45 ` Andrew Morton
2007-08-27 23:01 ` Christoph Lameter
2007-08-27 23:40 ` Andrew Morton
2007-08-27 23:48 ` Christoph Lameter [this message]
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=Pine.LNX.4.64.0708271644001.21218@schroedinger.engr.sgi.com \
--to=clameter@sgi.com \
--cc=akpm@linux-foundation.org \
--cc=linux-mm@kvack.org \
--cc=mingo@elte.hu \
--cc=thomas.jarosch@intra2net.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