From owner-freebsd-current@FreeBSD.ORG Wed Jan 7 15:12:17 2004 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 853B516A4CE; Wed, 7 Jan 2004 15:12:17 -0800 (PST) Received: from white.imgsrc.co.jp (ns.imgsrc.co.jp [210.226.20.2]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4D98B43D69; Wed, 7 Jan 2004 15:12:13 -0800 (PST) (envelope-from kuriyama@imgsrc.co.jp) Received: from localhost (localhost [127.0.0.1]) by white.imgsrc.co.jp (Postfix) with ESMTP id 28215284035; Thu, 8 Jan 2004 08:12:11 +0900 (JST) Received: from black.imgsrc.co.jp (black.imgsrc.co.jp [2001:218:422:2::130]) by white.imgsrc.co.jp (Postfix) with ESMTP id 160AF284028; Thu, 8 Jan 2004 08:12:10 +0900 (JST) Received: from black.imgsrc.co.jp (black.imgsrc.co.jp [2001:218:422:2::130]) by black.imgsrc.co.jp (Postfix) with ESMTP id E69561E462E; Thu, 8 Jan 2004 08:12:09 +0900 (JST) Date: Thu, 08 Jan 2004 08:12:09 +0900 Message-ID: <7mn08ztkty.wl@black.imgsrc.co.jp> From: Jun Kuriyama To: Robert Watson In-Reply-To: References: <7mad6bbul4.wl@black.imgsrc.co.jp> User-Agent: Wanderlust/2.10.1 (Watching The Wheels) SEMI/1.14.5 (Awara-Onsen) FLIM/1.14.5 (Demachiyanagi) APEL/10.6 Emacs/21.3 (i386--freebsd) MULE/5.0 (SAKAKI) MIME-Version: 1.0 (generated by SEMI 1.14.5 - "Awara-Onsen") Content-Type: text/plain; charset=US-ASCII X-Virus-Scanned: by AMaViS snapshot-20020531 X-Mailman-Approved-At: Wed, 07 Jan 2004 21:02:54 -0800 cc: Current Subject: Re: -current lockup (how to diagnose?) X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 07 Jan 2004 23:12:17 -0000 Hi Robert, At Tue, 2 Dec 2003 06:49:38 +0000 (UTC), Robert Watson wrote: > Could you try compiling in DEBUG_LOCKS into your kernel and doing "show > lockedvnods" with that? Unfortunately, someone removed the pid from the > output of that command, but didn't add the thread pointer to the DDB ps > output, so you'll probably need to modify the lockmgr_printinfo() function > in vfs_subr.c to print out lkp->lk_lockholder->td_proc->p_pid as well for > exclusive locks. It looks like maybe something isn't releasing a vnode > lock before returning to userspace. I have some patches to assert that no > lockmgr locks are held on the return to userspace, but I'll have to dig > them up tomorrow and send them to you. Basically, it adds a per-thread > lockmgr lock count in a thread-local variable, incrementing for each lock, > and decrementing for each release, and then KASSERT()'s in userret that > the variable is 0. Can I use these patches? I still get this lockup almost everyday (during nightly dump with snapshot). I'd like to try any patches even if they are half baked. -- Jun Kuriyama // IMG SRC, Inc. // FreeBSD Project