Re: [PATCH] Remove OOM killer from try_to_free_pages / all_unreclaimablebraindamage
From: Nick Piggin
Date: Mon Nov 08 2004 - 21:26:36 EST
Marcelo Tosatti wrote:
On Mon, Nov 08, 2004 at 02:27:31PM -0200, Marcelo Tosatti wrote:
On Fri, Nov 05, 2004 at 06:01:18PM -0200, Marcelo Tosatti wrote:
While doing this, I noticed that kswapd will happily go to sleep
if all zones have all_unreclaimable set. I bet this is the reason
for the page allocation failures we are seeing. So the patch
also makes balance_pgdat() NOT return and go to "loop_again"
instead in case of page shortage - even if all_unreclaimable is set.
Basically the "loop_again" logic IS NOT WORKING!
Wrong, the loop_again logic is working, all_zones_ok will be
set when DEF_PRIORITY = 0.
I meant priority=DEF_PRIORITY.
Yep
So the page allocation failures are happening for some other
reason(s).
Pre alloc_pages / kswapd shakeup, the watermark stuff had been pretty
broken. For example, allocations would wakeup kswapd at the *same*
watermark as they would start synchronous reclaim (or fail in the case
of !wait allocations).
Why there have been apparently more reports of allocation failures
since those patches is a mystery to me. I've looked but can't find
anything to explain it. Perhaps the initial watermark calculation had
been changed slightly? I'm not sure... it could also be just be a fluke
due to chaotic effects in the mm, I suppose :|
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/