Re: Kernel 2.6.29 runs out of memory and hangs.

From: David Rientjes
Date: Sun Apr 26 2009 - 15:55:47 EST


On Sat, 25 Apr 2009, Zeno Davatz wrote:

> Couldn't you start killing processes at an earlier stage? It seems to
> me that the stage when processes are being killed by oom_killer is a
> bit late in the game, when the machine is anyway very close to the
> freezing point. I mean we had these messages of oom_kill several times
> in our /var/log/kernel/current over a distributed amount of time.
>

The oom killer serves a very well-defined purpose: to kill a
memory-hogging task when your system (or cpuset, memory controller) is out
of memory. When it kills a task, it also allows access to memory reserves
that allow it to allocate beyond each allowable zone's min watermark.
This is intended to allow the task to quickly exit.

There is work being done on a per-cgroup lowmem notifier which would allow
userspace to poll() on a device file and be notified of low memory
situations so that it can react on its own (like killing a low priority
task, expanding a cpuset, increasing a memcontroller limit, etc.)
--
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/