Trying to kill a process that just won't die...

don don at drussell.dnsalias.com
Tue Jan 20 16:39:04 UTC 2004


Felipe Alfaro Solana said:
> On Tue, 2004-01-20 at 05:15, Gregory Gulik wrote:
>> F S   UID   PID  PPID  C PRI  NI ADDR    SZ WCHAN  TTY          TIME CMD
>> 1 D     0 11952     1  0  80   2    -  1341 wait_o ?        00:00:00
>> gtar
>
> This process is blocked waiting for I/O, so I can't be killed until the
> I/O request is completed. This is something usual for processes which
> use NFS: when the remote NFS dies or stops responding, the client
> program stays at D and can't be killed.

I find the above very interesting, and it reminds me of the purpose of the
"MIH routine" in mainframe systems... MIH = Missing Interrupt Handler. In
mainframe parlance, if the "device end interrupt" got "lost", the
associated IO device would appear hung and no further IO to/from it would
occur. The MIH routine detects a "stalled device queue" and re-initiates
the IO. (Which may fail with an IO error, but that's OK, the error can be
processed.

Maybe Linuc needs an "MIH routine, especially for network devices.





More information about the fedora-list mailing list