Re: Linux killed Kenny, bastard!

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: Theodore Tso
Date: Tuesday, January 13, 2009 - 3:49 pm

On Wed, Jan 14, 2009 at 12:46:27AM +0300, Evgeniy Polyakov wrote:

The standard way this gets handled for resource limits is very simple:

1)  parent forks the child process
2)  in the child process we set up resource limits, adjust oom
3)  exec the child's program.

As Alan has already pointed out to you:

   (echo XXXX > /proc/self/oom_adj ; exec /usr/bin/program)

There are two problems; one is whether or not the OOM protection is
inherited or not, and how one sets OOM protection --- and I think you
will find a huge resistance to using names as a way of expressing
policy.

The second problem is that oom_adj scoring is a hueristic which is
hard for system administrators to understand --- and these are
separable problems.  Don't try to conflate them, and try using the
fact that a random score echo'ed into /proc/pid/oom_adj is hard to
tune as a justification for using process executable names.

If you want to argue that using containers is too hard, and there out
to be a simpler tuning parameter where (for the sake of argument) all
processes are given a number from 0 to 10, where 5 is the default, and
higher numbers will be picked unconditionally over lower numbers, and
the existing OOM score is used to distinguish between two process with
the same OOM protection, that's fine.

How we set that OOM protection class, whether it is via setrlimit() or
echoing into a magic /proc/pid/oom_protection file, and whether it
inherits across fork and exec calls, are a separate question.

	 	     	      	     	   - Ted
--
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
Linux killed Kenny, bastard!, Evgeniy Polyakov, (Mon Jan 12, 8:33 am)
Re: Linux killed Kenny, bastard!, Dave Jones, (Mon Jan 12, 8:44 am)
Re: Linux killed Kenny, bastard!, Evgeniy Polyakov, (Mon Jan 12, 8:48 am)
Re: Linux killed Kenny, bastard!, Alan Cox, (Mon Jan 12, 8:49 am)
Re: Linux killed Kenny, bastard!, Evgeniy Polyakov, (Mon Jan 12, 8:50 am)
Re: Linux killed Kenny, bastard!, Alan Cox, (Mon Jan 12, 8:51 am)
Re: Linux killed Kenny, bastard!, Evgeniy Polyakov, (Mon Jan 12, 8:52 am)
Re: Linux killed Kenny, bastard!, Alan Cox, (Mon Jan 12, 8:52 am)
Re: Linux killed Kenny, bastard!, Evgeniy Polyakov, (Mon Jan 12, 8:56 am)
Re: Linux killed Kenny, bastard!, Alan Cox, (Mon Jan 12, 9:19 am)
Re: Linux killed Kenny, bastard!, Dave Jones, (Mon Jan 12, 9:22 am)
Re: Linux killed Kenny, bastard!, Evgeniy Polyakov, (Mon Jan 12, 9:28 am)
Re: Linux killed Kenny, bastard!, Evgeniy Polyakov, (Mon Jan 12, 9:29 am)
Re: Linux killed Kenny, bastard!, Chris Snook, (Mon Jan 12, 2:29 pm)
Re: Linux killed Kenny, bastard!, Evgeniy Polyakov, (Mon Jan 12, 2:42 pm)
Re: Linux killed Kenny, bastard!, Bill Davidsen, (Mon Jan 12, 4:00 pm)
Re: Linux killed Kenny, bastard!, Evgeniy Polyakov, (Mon Jan 12, 4:17 pm)
Re: Linux killed Kenny, bastard!, David Rientjes, (Mon Jan 12, 6:53 pm)
Re: Linux killed Kenny, bastard!, Evgeniy Polyakov, (Tue Jan 13, 1:52 am)
Re: Linux killed Kenny, bastard!, David Rientjes, (Tue Jan 13, 2:54 am)
Re: Linux killed Kenny, bastard!, Evgeniy Polyakov, (Tue Jan 13, 4:54 am)
Re: Linux killed Kenny, bastard!, Alan Cox, (Tue Jan 13, 5:15 am)
Re: Linux killed Kenny, bastard!, Evgeniy Polyakov, (Tue Jan 13, 5:29 am)
Re: Linux killed Kenny, bastard!, Theodore Tso, (Tue Jan 13, 6:19 am)
Re: Linux killed Kenny, bastard!, Evgeniy Polyakov, (Tue Jan 13, 6:35 am)
Re: Linux killed Kenny, bastard!, Jan-Frode Myklebust, (Tue Jan 13, 6:41 am)
Re: Linux killed Kenny, bastard!, Alan Cox, (Tue Jan 13, 6:47 am)
[why oom_adj does not work] Re: Linux killed Kenny, bastard!, Evgeniy Polyakov, (Tue Jan 13, 6:52 am)
Re: Linux killed Kenny, bastard!, Alan Cox, (Tue Jan 13, 6:59 am)
Re: Linux killed Kenny, bastard!, KOSAKI Motohiro, (Tue Jan 13, 9:35 am)
Re: [why oom_adj does not work] Re: Linux killed Kenny, ba ..., Valdis.Kletnieks, (Tue Jan 13, 11:04 am)
Re: Linux killed Kenny, bastard!, David Rientjes, (Tue Jan 13, 12:15 pm)
Re: Linux killed Kenny, bastard!, David Rientjes, (Tue Jan 13, 12:36 pm)
Re: Linux killed Kenny, bastard!, Evgeniy Polyakov, (Tue Jan 13, 2:46 pm)
Re: Linux killed Kenny, bastard!, Evgeniy Polyakov, (Tue Jan 13, 3:00 pm)
Re: Linux killed Kenny, bastard!, Evgeniy Polyakov, (Tue Jan 13, 3:04 pm)
Re: Linux killed Kenny, bastard!, Theodore Tso, (Tue Jan 13, 3:49 pm)
Re: Linux killed Kenny, bastard!, Evgeniy Polyakov, (Tue Jan 13, 4:02 pm)
Re: Linux killed Kenny, bastard!, David Rientjes, (Tue Jan 13, 4:10 pm)
Re: Linux killed Kenny, bastard!, Valdis.Kletnieks, (Tue Jan 13, 4:26 pm)
Re: Linux killed Kenny, bastard!, Evgeniy Polyakov, (Tue Jan 13, 4:35 pm)
Re: Linux killed Kenny, bastard!, Evgeniy Polyakov, (Tue Jan 13, 4:36 pm)
Re: Linux killed Kenny, bastard!, David Rientjes, (Tue Jan 13, 4:43 pm)
Re: Linux killed Kenny, bastard!, Evgeniy Polyakov, (Tue Jan 13, 4:55 pm)
Re: Linux killed Kenny, bastard!, Bill Davidsen, (Tue Jan 13, 5:24 pm)
Re: Linux killed Kenny, bastard!, David Rientjes, (Tue Jan 13, 5:32 pm)
Re: Linux killed Kenny, bastard!, Evgeniy Polyakov, (Tue Jan 13, 5:35 pm)
Re: Linux killed Kenny, bastard!, Evgeniy Polyakov, (Tue Jan 13, 5:53 pm)
Re: Linux killed Kenny, bastard!, Theodore Tso, (Tue Jan 13, 6:11 pm)
Re: Linux killed Kenny, bastard!, Evgeniy Polyakov, (Tue Jan 13, 6:20 pm)
Re: Linux killed Kenny, bastard!, Theodore Tso, (Tue Jan 13, 9:06 pm)
Re: Linux killed Kenny, bastard!, Valdis.Kletnieks, (Tue Jan 13, 9:23 pm)
Re: Linux killed Kenny, bastard!, Evgeniy Polyakov, (Wed Jan 14, 2:07 am)
OOM documentation update [was: Linux killed Kenny, bastard!], Evgeniy Polyakov, (Wed Jan 14, 9:12 am)
[take2] OOM documentation update [was: Linux killed Kenny, ..., Evgeniy Polyakov, (Wed Jan 14, 10:06 am)