Subject: Re: Some interesting papers on BSD ...
To: None <terry@lambert.org>
From: David S. Miller <dm@neteng.engr.sgi.com>
List: tech-kern
Date: 07/14/1996 19:19:21
   From: Terry Lambert <terry@lambert.org>
   Date: Sun, 14 Jul 1996 17:28:03 -0700 (MST)

   > Solaris kernel also has a debugging feature, it's called "deadman".
   > Every so often a timer based callout runs which runs down all the
   > mutex/semaphore/spinlock holder lists in the kernel and panics if any
   > circular and/or deadlock cases are found.

   The IBM database design manual indicates several methods of fast
   computation of transitive closure over acyclic directed  graphs
   which make this kind of kludge unnecessary.  IMO, deadlock
   avoidance beats deadlock detection any day of the week.  Consider
   the issue of a two context deadly embrace for a resource: how do
   you unwind state so you don't lose already processed context?  In
   the deadlock detection case, the anser is "you probably don't".  Or
   you go to some overly complicated cruft, like the system call
   interrupt code in the trap, using a longjmp to unwind the stack.

I agree, my point was that Solaris had the feature not that the
feature was a good one. ;-)

Later,
David S. Miller
dm@sgi.com