Date: Thu, 24 Jan 2008 18:54:46 +0100 From: "Attilio Rao" <attilio@freebsd.org> To: "Yar Tikhiy" <yar@comp.chem.msu.su> Cc: Kostik Belousov <kostikbel@gmail.com>, freebsd-current@freebsd.org Subject: Re: panic: System call lstat returning with 1 locks held Message-ID: <3bbf2fe10801240954r1aa5ae1g3ce347cf4dbbbba@mail.gmail.com> In-Reply-To: <20080124174759.GC78114@comp.chem.msu.su> References: <790a9fff0801150552l542a4238ofc12efe5fdb45fc2@mail.gmail.com> <20080115143924.GB57756@deviant.kiev.zoral.com.ua> <20080124122808.GA15600@freefall.freebsd.org> <3bbf2fe10801240518i6e18b2f5w84de652d4170c95b@mail.gmail.com> <20080124174759.GC78114@comp.chem.msu.su>
next in thread | previous in thread | raw e-mail | index | archive | help
2008/1/24, Yar Tikhiy <yar@comp.chem.msu.su>: > On Thu, Jan 24, 2008 at 02:18:56PM +0100, Attilio Rao wrote: > > 2008/1/24, Yar Tikhiy <yar@freebsd.org>: > > > On Tue, Jan 15, 2008 at 04:39:24PM +0200, Kostik Belousov wrote: > > > > > > > > I think this could be related to the recent vn_lock()/VOP_LOCK() KPI changes. > > > > Please, add DEBUG_VFS_LOCKS to the kernel config, and do the > > > > show lockedvnods > > > > from the ddb prompt when the panic occurs. The witness does not track > > > > the lockmgr locks. > > > > > > I think I'm seeing the same panic on UFS. It's rather nasty: I > > > cannot rebuild CURRENT natively due to it so I have to build it > > > under 6-STABLE. My favourite way to trigger the panic reliably is > > > running `make install' in a simple port directory, e.g., portmaster, > > > but my system also panics during daily scripts run and, as already > > > said, if trying to build world. > > > > Yar, > > as it seems reproducible for you, can you please add this patch to the tree: > > http://www.freebsd.org/~attilio/debug_tdlocks.diff > > > > compile your kernel with: > > options KTR > > options KTR_COMPILE=(KTR_SPARE2) > > options KTR_MASK=(KTR_SPARE2) > > options KTR_ENTRIES=32768 > > > > and once kernel panics, at ddb prompts do: > > > show ktr > > The first lines of the ktr output are attached. I can try to extract > all 32768 lines if needed, but they all look almost the same. I.e., > the function name and the td pointer are the same while td_locks > bump is 1 or -1. You mean the traced owner is always the same? Do you see any call to lockmgr_disown() in the code? Thanks, Attilio -- Peace can only be achieved by understanding - A. Einstein
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3bbf2fe10801240954r1aa5ae1g3ce347cf4dbbbba>