panic: System call lstat returning with 1 locks held

Scot Hetzel swhetzel at gmail.com
Tue Jan 15 23:01:46 PST 2008


On 1/15/08, Kostik Belousov <kostikbel at gmail.com> wrote:
> On Tue, Jan 15, 2008 at 07:52:12AM -0600, Scot Hetzel wrote:
> > When I boot a Jan 13th or Jan 15th kernel, and then run
> > /usr/local/etc/cvsup/update.sh to update the local CVS repository, I
> > get the following panic:
> >
> > panic: System call lstat returning with 1 locks held
> > cpuid = 0
> > KDB: enter: panic
> > [thread ; pid 1240 tid 10031]
> > stopped at kdb_enter+0x3d: movq $0,0x41b048(%rip)
> > db> show alllocks
> > db> show locks
> > db> bt
> > tracing pid 1240 tid 10031 td 0xffffff001c1ad360
> > kdb_enter() at kdb_enter+0x3d
> > panic() at panic+0x176
> > syscalls() at syscalls+0x66d
> > Xfast_syscalls() at Xfast_syscalls+0xab
> > --- syscall (0, FreeBSD ELF64, nosys), rip = 0x8009e87ec, rsp=
> > 0x72ec50, rbp = 0x72ed28 ---
> >
> 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 added DEBUG_VFS_LOCKS to the kernel config file, rebuilt and
installed the kernel.  After rebooting the system, I started the cvsup
update for my local mirror, when the panic occured I received a
similar panic to the one above.  When I used 'show lockedvnods' the
only thing that was displayed was 'Locked vnodes' and that was it.

I'm going to try a binary search to see if I can narrow the problem down.

Scot


More information about the freebsd-current mailing list