Messages in this thread | | | Date | Sat, 17 Jan 2009 15:12:49 +0100 (CET) | From | Bodo Eggert <> | Subject | Re: [why oom_adj does not work] Re: Linux killed Kenny, bastard! |
| |
On Fri, 16 Jan 2009, Evgeniy Polyakov wrote: > On Thu, Jan 15, 2009 at 10:50:58PM +0100, Bodo Eggert (7eggert@gmx.de) wrote:
> > > This does not work if processes are short-living and are spawned by the > > > parent on demand. > > > > They will have the same name, too. Your Kenny-killer will fail, too. > > It is not always the case, processes start executing different binaries > and change the names, that's at least what I observed in the particular > root case of the discussion.
In that case, you can use a wrapper script.
> > > If processes have different priority in regards to oom > > > condition, this problem can not be solved with existing interfaces > > > without changing the application. So effectively there is no solution. > > > > ACK, but being a child should count. Maybe the weight for childs should be > > increased, if it does not do the right thing? Or maybe the childs do share > > much (most of the) memory, so killing the parent is the right thing if you > > want to free some RAM? > > There could be lots of heuristics applied for the different cases, but > without changing the application, they are somewhat limited to > long-living processes only. There are really lots of cases when it does > not stand.
If it's short-lived enough, the processes will out-die the OOM-Killer. You can only win by by suspending or killing the factory. -- Why do men die before their wives? They want to.
| |