From owner-freebsd-current Thu Oct 3 03:11:12 1996 Return-Path: owner-current Received: (from root@localhost) by freefall.freebsd.org (8.7.5/8.7.3) id DAA18782 for current-outgoing; Thu, 3 Oct 1996 03:11:12 -0700 (PDT) Received: from who.cdrom.com (who.cdrom.com [204.216.27.3]) by freefall.freebsd.org (8.7.5/8.7.3) with ESMTP id DAA18773; Thu, 3 Oct 1996 03:11:09 -0700 (PDT) Received: from minnow.render.com (render.demon.co.uk [158.152.30.118]) by who.cdrom.com (8.7.5/8.6.11) with SMTP id DAA27669 ; Thu, 3 Oct 1996 03:11:05 -0700 (PDT) Received: from minnow.render.com (minnow.render.com [193.195.178.1]) by minnow.render.com (8.6.12/8.6.9) with SMTP id LAA25801; Thu, 3 Oct 1996 11:09:15 +0100 Date: Thu, 3 Oct 1996 11:09:13 +0100 (BST) From: Doug Rabson To: Julian Elischer cc: current@freefall.freebsd.org Subject: Re: HELP!! kernel deadlock found.. In-Reply-To: <199610030539.WAA02269@freefall.freebsd.org> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-current@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk On Wed, 2 Oct 1996, Julian Elischer wrote: > > Take the following 3 processes: > > proc N, with a lock on file / (inode 2) > wchan of that inode, waitstring of "ufslk2" > is waiting for inode for /mnt in the root filesystem (inode M) > > proc N+1 with a lock on the inode M (/mnt in root filesystem) > is waiting for inode for / (inode 2) in the mounted filesystem /mnt > it is showing "uihget" as a waitstring. > > proc N+2 with a lock on inode 2 of the mnt filesystem (/ of that filesystem) > is waiting for the inode for / and is showing "ufslk2" as a waitstring. > > It is my suspicion that process N+2 may be trying to unmount /mnt. It looks as if N+2 is attempting to perform a pathname lookup while it has a locked vnode. > > Unfortunatly though I have the system stopped in gdb > I don't know how to examine the stacktrace of arbitrary > processes so I can't say how those 3 processes got where > they are. All other processes on the system > that need to access the filesystem are locked in "ufslk2" > > e.g. any new logins go there immediatly. :( > > if anyone knows how to examine an arbitrary process stacktrace > I'd like to hear about it....... I wanted to do this with DDB once and I think I was stumped by the kernel stack being in the u-area which is mapped to the same place for each process. Since the process I wanted to backtrace was not curproc, I couldn't see its stack :-(. -- Doug Rabson, Microsoft RenderMorphics Ltd. Mail: dfr@render.com Phone: +44 171 734 3761 FAX: +44 171 734 6426