From owner-freebsd-hackers Sun Jul 14 19:20:52 1996 Return-Path: owner-hackers Received: (from root@localhost) by freefall.freebsd.org (8.7.5/8.7.3) id TAA07776 for hackers-outgoing; Sun, 14 Jul 1996 19:20:52 -0700 (PDT) Received: from sgigate.sgi.com (sgigate.SGI.COM [204.94.209.1]) by freefall.freebsd.org (8.7.5/8.7.3) with SMTP id TAA07762 for ; Sun, 14 Jul 1996 19:20:49 -0700 (PDT) Received: from cthulhu.engr.sgi.com by sgigate.sgi.com via ESMTP (951211.SGI.8.6.12.PATCH1042/940406a.SGI) id TAA28386; Sun, 14 Jul 1996 19:19:25 -0700 Received: from neteng.engr.sgi.com (neteng.engr.sgi.com [192.26.80.10]) by cthulhu.engr.sgi.com (950413.SGI.8.6.12/960327.SGI.AUTOCF) via ESMTP id TAA16929; Sun, 14 Jul 1996 19:19:22 -0700 Received: (from dm@localhost) by neteng.engr.sgi.com (950413.SGI.8.6.12/960327.SGI.AUTOCF) id TAA09617; Sun, 14 Jul 1996 19:19:21 -0700 Date: Sun, 14 Jul 1996 19:19:21 -0700 Message-Id: <199607150219.TAA09617@neteng.engr.sgi.com> From: "David S. Miller" To: terry@lambert.org CC: imp@village.org, bde@zeta.org.au, matt@lkg.dec.com, freebsd-hackers@FreeBSD.ORG, tech-kern@NetBSD.ORG In-reply-to: <199607150028.RAA07332@phaeton.artisoft.com> (message from Terry Lambert on Sun, 14 Jul 1996 17:28:03 -0700 (MST)) Subject: Re: Some interesting papers on BSD ... Reply-to: dm@sgi.com Sender: owner-hackers@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk From: Terry Lambert 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