Ultrix tape job is unkillable!
David F. Carlson
dave at micropen
Wed Dec 21 00:03:24 AEST 1988
In article <732 at auspex.UUCP>, guy at auspex.UUCP (Guy Harris) writes:
> >Now (besides the obvious, cntl/C to the program), what do I
> >do in the future when we have such a hung process?
>
> Reboot. I suspect the problem may be that an interrupt was lost, or
> since it's waiting at a priority less than PZERO, you can't get rid of
>
> In this particular case, there is arguably a bug in the tape driver; I
> don't know how easy it is to fix.
Of course, there is a bug. And by the description, the driver is waiting
at less than PZERO too.
My suggestion, and yes, in my code requirements, is that *ALL* device drivers
have a hard reset ioctl that frees every used resource and resets the state
of the hardware to a known good state. There is no excuse for the default
action of a driver bug (yes, there will be bugs) hanging a process without
any hope of salvation. The code is usually already written in for most drivers
that have an init() code.
Is there any reason to build a device driver without a hard reset?
--
David F. Carlson, Micropen, Inc.
micropen!dave at ee.rochester.edu
"The faster I go, the behinder I get." --Lewis Carroll
More information about the Comp.unix.wizards
mailing list