public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Michael Clark <michael@metaparadigm.com>
To: Bill Davidsen <davidsen@tmr.com>
Cc: linux-kernel@vger.kernel.org, DervishD <lkml@dervishd.net>,
	"Gene Heskett" <gene.heskett@verizon.net>,
	"Måns Rullgård" <mru@inprovide.com>
Subject: Re: is killing zombies possible w/o a reboot?
Date: Thu, 04 Nov 2004 09:19:10 +0800	[thread overview]
Message-ID: <4189838E.1030808@metaparadigm.com> (raw)
In-Reply-To: <418964A3.7030105@tmr.com>

On 11/04/04 07:07, Bill Davidsen wrote:
> DervishD wrote:
> 
>>     Hi Gene :)
>>
>>  * Gene Heskett <gene.heskett@verizon.net> dixit:
>>
>>>>   Then the children are reparented to 'init' and 'init' gets rid
>>>> of them. That's the way UNIX behaves.
>>>
>>>
>>> Unforch, I've *never* had it work that way.  Any dead process I've 
>>> ever had while running linux has only been disposable by a reboot.
>>
>>
>>
>>     Well, you know, shit happens... Anyway, could you define 'dead'?
>> Because if you're talking about zombies whose parent dies, they're
>> killable easily: just wait until init reaps them (usually in less
>> than 5 minutes since they dead). If you are talking about zombies who
>> has their parent alive, then it's a bug in the application, not the
>> kernel. In fact I wouldn't like if the kernel reaps my children
>> before I do, just in case I want to do something.
>>
>>     If you're talking about unkillable processes (those stuck in
>> disk-sleep state), you're right: only rebooting can kill them
>> (although sometimes they go out of D state and die normally). Bad
>> luck for you if any dead process you've ever had while running linux
>> has been of this kind :(
> 
> 
> That often seems to be the case, the kernel thinks there's an i/o going 
> on which isn't, and doesn't time it out. It would be nice if there were 
> a way to get the kernel to abort all outstanding i/o on kill -9, but I'm 
> sure if it were easy it would have happened. Timeouts in the application 
> are useful, but in some cases I believe the process dies because it 
> detects a long i/o time but has nothing to do but terminate, which 
> creates the zombie.

It could be any driver code that uses uninterruptible sleeps rather
than interruptible sleeps I believe. If a process is doing a read or
write to one of these devices and it stays stuck in kernel code with
TASK_UNINTERRUPTIBLE and never gets it's expected wake up, then the
signal will never be delivered and the process is stuck indefinately.
The buggy driver code needs to be fixed (either to use interruptible
sleeps and handle the signals or to imlement some sort of timeout).

~mc

  reply	other threads:[~2004-11-04  1:18 UTC|newest]

Thread overview: 99+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-11-03 12:51 is killing zombies possible w/o a reboot? Gene Heskett
2004-11-03 14:33 ` bert hubert
2004-11-03 14:49   ` Måns Rullgård
2004-11-03 15:25     ` DervishD
2004-11-03 15:25       ` Måns Rullgård
2004-11-03 17:49         ` DervishD
2004-11-03 16:47       ` Gene Heskett
2004-11-03 17:44         ` DervishD
2004-11-03 18:53           ` Gene Heskett
2004-11-03 19:01             ` Doug McNaught
2004-11-03 19:03             ` Måns Rullgård
2004-11-03 19:24               ` Gene Heskett
2004-11-03 19:33                 ` Doug McNaught
2004-11-03 19:34                 ` Måns Rullgård
2004-11-03 19:06             ` Valdis.Kletnieks
2004-11-03 19:26               ` Gene Heskett
2004-11-03 19:33                 ` Valdis.Kletnieks
2004-11-03 20:09                   ` Gene Heskett
2004-11-04 19:24                     ` Bill Davidsen
2004-11-03 19:42                 ` DervishD
2004-11-03 23:12                   ` Bill Davidsen
2004-11-04 10:26                     ` DervishD
2004-11-04 14:23                       ` Paul Slootman
2004-11-04 14:56                         ` Gene Heskett
2004-11-04 18:24                         ` DervishD
2004-11-04 19:22                       ` Bill Davidsen
2004-11-04 20:53                         ` DervishD
2004-11-03 19:26             ` DervishD
2004-11-03 20:18               ` Gene Heskett
2004-11-03 22:15               ` Jim Nelson
2004-11-03 22:44                 ` Russell Miller
2004-11-03 23:03                   ` Doug McNaught
2004-11-03 23:33                     ` Russell Miller
2004-11-03 23:47                       ` Mathieu Segaud
2004-11-03 23:56                         ` Russell Miller
2004-11-04  0:05                           ` Mathieu Segaud
2004-11-04  6:39                       ` Denis Vlasenko
2004-11-05  2:38                         ` Elladan
2004-11-05  3:10                           ` Tim Connors
2004-11-05  3:17                             ` Russell Miller
2004-11-05  4:38                             ` Elladan
2004-11-05  5:00                             ` Kyle Moffett
2004-11-04 20:06                       ` Bill Davidsen
2004-11-03 23:06                   ` vlobanov
2004-11-04 10:04                   ` Helge Hafting
2004-11-04 17:16                     ` Alex Bennee
2004-11-04 16:30                 ` Pedro Venda (SYSADM)
2004-11-04 22:28                   ` Helge Hafting
2004-11-03 23:07               ` Bill Davidsen
2004-11-04  1:19                 ` Michael Clark [this message]
2004-11-04 16:01         ` kernel
2004-11-04 16:18           ` Gene Heskett
2004-11-04 16:47             ` kernel
2004-11-04 17:58               ` Gene Heskett
2004-11-03 22:58       ` Bill Davidsen
2004-11-04 10:23         ` DervishD
2004-11-04 19:32           ` Bill Davidsen
2004-11-04 21:11             ` DervishD
2004-11-09 23:31               ` Bill Davidsen
2004-11-10  9:11                 ` DervishD
2004-11-03 23:18       ` Adam Heath
2004-11-03 16:38     ` Gene Heskett
2004-11-03 16:24   ` Gene Heskett
2004-11-03 16:46     ` linux-os
2004-11-03 19:12       ` Gene Heskett
2004-11-03 19:56       ` Måns Rullgård
2004-11-03 20:13     ` Helge Hafting
2004-11-03 20:40       ` Gene Heskett
2004-11-04  0:43         ` Kurt Wall
2004-11-04  1:01           ` Russell Miller
2004-11-04  1:38             ` Doug McNaught
2004-11-04  1:45               ` Russell Miller
2004-11-04  1:56                 ` Doug McNaught
2004-11-04  1:59                 ` Mitchell Blank Jr
2004-11-04 20:10                   ` Bill Davidsen
2004-11-04 10:07         ` Matthias Andree
2004-11-04 22:31           ` Peter Chubb
2004-11-04 23:33           ` Benno
2004-11-03 20:48 ` Tom Felker
2004-11-03 21:08   ` Gene Heskett
2004-11-04  7:19     ` Jan Knutar
2004-11-04 11:57       ` Gene Heskett
2004-11-04 12:12         ` Jan Knutar
2004-11-04 12:18           ` Gene Heskett
2004-11-04 12:29             ` Jan Knutar
2004-11-04 13:56               ` Gene Heskett
2004-11-04 12:39           ` Gene Heskett
2004-11-04 13:01             ` Ian Campbell
2004-11-04 14:07               ` Gene Heskett
2004-11-04 14:24                 ` Ian Campbell
2004-11-04 15:10                   ` Gene Heskett
2004-11-04 14:26                 ` DervishD
2004-11-04 15:13                   ` Gene Heskett
2004-11-04 13:10             ` Doug McNaught
2004-11-04 14:11               ` Gene Heskett
2004-11-04 14:42                 ` tlaurent
2004-11-04 15:14                   ` Gene Heskett
2004-11-04 20:18             ` Bill Davidsen
2004-11-05  0:29   ` Gene Heskett

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4189838E.1030808@metaparadigm.com \
    --to=michael@metaparadigm.com \
    --cc=davidsen@tmr.com \
    --cc=gene.heskett@verizon.net \
    --cc=linux-kernel@vger.kernel.org \
    --cc=lkml@dervishd.net \
    --cc=mru@inprovide.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox