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

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


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/



This archive was generated by hypermail 2b29 : Tue Jul 30 2002 - 14:00:33 EST