[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Bug#126750: klogd should optionally be started from init(8)



On Sun, 30 Dec 2001, Russell Coker wrote:
> On Sun, 30 Dec 2001 01:03, Dominik Kubla wrote:
> > On Sat, Dec 29, 2001 at 09:47:27PM -0200, Henrique de Moraes Holschuh wrote:
> > > Nowhere does it use the process name to lessen the chances of killing a
> > > process. IMHO it would be a nice idea to have such a whitelist just in
> > > case.
> > Extremely bad idea... All of a sudden every process somebody does not want
> > to be killed is called "syslog" or "named" or what ever.
> True.

Not just like that. Read the code you two before you start talking nonsense.

Such a table should not (and needs not) to benefit processes running by
someone else than root, unless you wanted to do such a thing on purpose and
coded it like that.  Root processes already have a much lesser probability
of being killed. If I want a table to fix the issue with the ordering
on time of two or three processes, I would need to be quite stupid to do
something that screwed up the OOM balancing so much that users would start
naming their processes syslog or named to avoid them being killed.

As for root naming processes syslog to avoid them being killed, there is
something to be said about stupidity.

> > Let's face it folks: if the OOM killer hits you constantly you have
> > exhausted your resources.  The solution is to buy new resources, not to
> > invent convoluted schemes to make a bad situatation last longer.

Lets face it: it would be best if the logging stuff did not get killed
without reason, and would restart itself in such cases. There IS a lot of
advantage on resilience. Improving resilience is not futile, but it is not
an substitute to good administration. Does that mean one should never bother
to improve the tools to be more resilient, because good administration is
more important? IMHO, no.

I dislike important crap that dies too easily, and I think init is the
natural choice for taking care of [the very few] processes that need to be
shephered, because it already does just that, and does it very well.  

I fail to see why that is a convoluted solution, and why it is good to have
frail syslog daemons, and nothing to kick their back into life should they
die, but maybe I am myoptic...  as for the OOM, it was not MY idea to fiddle
with it.

> There are other options.  You could have a root-only syscall which says 
> "don't kill me" to go with the root-only syscall for "don't page me out".

Yes. This is another way to do it, and it is a good one too.  Harder to
implement, since you need to somehow keep that 'don't kill me' state stored
somewhere, but it is a better solution than the table, I suppose.

But do recall it must mean "I am important, schedule me to die last", not
"don't kill me".

-- 
  "One disk to rule them all, One disk to find them. One disk to bring
  them all and in the darkness grind them. In the Land of Redmond
  where the shadows lie." -- The Silicon Valley Tarot
  Henrique Holschuh



Reply to: