Subject: Re: why must exiting processes wait forever for events that never occur?!?!?!
To: NetBSD Kernel Technical Discussion List <firstname.lastname@example.org>
From: Robert Elz <kre@munnari.OZ.AU>
Date: 10/18/2000 01:28:18
Date: Tue, 17 Oct 2000 07:13:39 -0700
From: Paul A Vixie <email@example.com>
| I know this solves the problem in the wrong way, but here's what Mike Karels
| added to BSD/OS when I complained bitterly about the same close() wait bug:
For what it is worth, this behaviour certainly wasn't new to BSD, it
was VERY common to have things like this happen (much more common than
in current systems) in 6th edition unix (and others of that vintage).
Rebooting to clear devices hung in close was almost a daily occurrence.
And yes, there should be timeouts in close routines, this just gets a
little difficult, as the close routine tends to simply use generic output
routines, which are also used from code that should never time out.
The world as we know it would end if it were possible to interrupt a
process that is already exiting though (which Greg suggested) so I don't
think that's ever likely to happen...