page allocation failure. order:0, mode:0x0

David F Barrera (dbarrera@us.ibm.com)
Mon, 29 Jul 2002 11:20:31 -0500


Tried the lru-removal.patch on 2.5.27 but the problem still occurs.
Many of these displayed on dmesg: pdflush: page allocation failure.
order:0, mode:0x0

David Barrera


Andrew Morton
<akpm@zip.com.au> To: Andrea Arcangeli <andrea@suse.de>
Sent by: cc: David F Barrera/Austin/IBM@IBMUS, linux-kernel@vger.kernel.org
akpm@e3.ny.us.ibm Subject: Re: kernel BUG at page_alloc.c:92! & page allocation failure. order:0,
.com mode:0x0


07/24/2002 03:11
PM


Andrea Arcangeli wrote:
>
> On Wed, Jul 24, 2002 at 12:35:54PM -0700, Andrew Morton wrote:
> > And please drop the ptrace.c change and use
> > http://www.zip.com.au/~akpm/linux/patches/2.5/2.5.27/lru-removal.patch
> > instead.
>
> page_cache_release() can return a #define to __free_page().
>

Man, it can do a ton more than that. This patch is just a stopgap
to prevent the oops.

page_cache_release() goes out onto the bus for the PageReserved()
test and then immediately goes out onto the bus again to perform the
atomic_dec_and_test(). Plus it tends to do all this inside
a global lock. That PageReserved thing needs to go away.

Seriously, this stuff needs a truck driven through it. See
http://mail.nl.linux.org/linux-mm/2002-07/msg00009.html and things
like pagevec_release(). It still needs quite some work, but the
optimisations which are available here are considerable.

-

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/