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.
*/