2003-02-23 20:48:02

by Rik van Riel

[permalink] [raw]
Subject: [PATCH][TRIVIAL] don't let OOM killer kill same process repeatedly


If a process cannot exit because it's stuck in eg. a driver, it
doesn't make sense to have the OOM killer kill it repeatedly;
that could lead to a hung system.

Instead, kill another process if the first process we tried to
kill hasn't made any move to exit within 5 seconds. This way
we have a much better chance of recovering the system.

Note: this patch applies without offset to both 2.4 and 2.5,
since oom_kill.c hasn't changed since about 2.4.14...

please apply,

Rik
--
Engineers don't grow up, they grow sideways.
http://www.surriel.com/ http://kernelnewbies.org/



===== mm/oom_kill.c 1.11 vs edited =====
--- 1.11/mm/oom_kill.c Fri Aug 16 10:59:46 2002
+++ edited/mm/oom_kill.c Sat Feb 22 17:31:49 2003
@@ -61,6 +61,9 @@

if (!p->mm)
return 0;
+
+ if (p->flags & PF_MEMDIE)
+ return 0;
/*
* The memory size of the process is the basis for the badness.
*/