Subject: Re: Unkillable processes
To: Wolfgang Solfrank <firstname.lastname@example.org>
From: Tom I Helbekkmo <tih@Hamartun.Priv.NO>
Date: 11/18/1996 17:23:59
On Fri, 15 Nov 1996, Wolfgang Solfrank wrote:
> There is nothing wrong with doing an 'ls' while copying a file to
> the same directory. If this results in a deadlock, there is a bug
> somewhere. If you can reproduce this with a more current system,
> I'm sure we'd all like to hear it (probably "like" is not the
> correct word here :-)).
It's extremely reproducible if you use union mounts. I keep the
NetBSD-current source distribution unchanged in one directory tree,
and union mount another one on top, where my changes end up. A cron
job generates diffs every night (the two trees are actually mounted,
one after the other, on /usr/src, so they can be diffed where they
actually reside). This works great, as long as I remember that only
one process can do work inside the union mount under /usr/src at any
given time: if I make the mistake of trying to make changes there
while I've got a kernel compile or something going in the background,
it only takes a very short time before the file system deadlocks.
When this happens, everything works just fine, except that any access
to the (real) file systems involved will hang.
Popularity is the hallmark of mediocrity. --Niles Crane, "Frasier"