Subject: panic: lockdebug_lookup: uninitialized lock (1, id=0)
To: NetBSD current <current-users@netbsd.org>
From: Nicolas Joly <njoly@pasteur.fr>
List: current-users
Date: 09/07/2007 19:50:45
Hi,

I'm currently experiencing various `uninitialized lock' kernel panic
on my -current NetBSD/amd64 workstation; while running some pretty
complex compat linux stuff which worked before.

njoly@lanfeust [~]> uname -a
NetBSD lanfeust.sis.pasteur.fr 4.99.30 NetBSD 4.99.30 (LANFEUST_DEVEL) #46: Fri Sep  7 19:18:05 CEST 2007  njoly@lanfeust.sis.pasteur.fr:/local/src/NetBSD/obj/amd64/sys/arch/amd64/compile/LANFEUST_DEVEL amd64

This a GENERIC.MP kernel with DIAGNOSTIC+LOCKDEBUG (and a few other
devices).

panic: lockdebug_lookup: uninitialized lock (1, id=0)
Stopped in pid 439.1 (top) at   netbsd:cpu_Debugger+0x5:        leave
db{1}> mach cpu 0
using CPU 0
db{1}> bt
splraise() at netbsd:splraise
_kernel_lock() at netbsd:_kernel_lock+0x1b6
DDB lost frame for netbsd:Xsoftclock+0x1a, trying 0xffff800048f78e10
Xsoftclock() at netbsd:Xsoftclock+0x1a
--- interrupt ---
0x202:
db{1}> mach cpu 1
using CPU 1
db{1}> bt
cpu_Debugger() at netbsd:cpu_Debugger+0x5
panic() at netbsd:panic+0x1fc
lockdebug_wantlock() at netbsd:lockdebug_wantlock+0x195
mutex_vector_enter() at netbsd:mutex_vector_enter+0x24c
sysctl_doeproc() at netbsd:sysctl_doeproc+0x726
sysctl_dispatch() at netbsd:sysctl_dispatch+0xc8
sys___sysctl() at netbsd:sys___sysctl+0xe8
syscall_plain() at netbsd:syscall_plain+0x1d2
--- syscall (number 5333120) ---
0x7ba35:

Another example:

panic: lockdebug_lookup: uninitialized lock (1, id=889192976)
Stopped in pid 0.2 (system) at  netbsd:cpu_Debugger+0x5:        leave
db{0}> mach cpu 0
using CPU 0
db{0}> bt
cpu_Debugger() at netbsd:cpu_Debugger+0x5
panic() at netbsd:panic+0x1fc
lockdebug_wantlock() at netbsd:lockdebug_wantlock+0x195
mutex_vector_enter() at netbsd:mutex_vector_enter+0x24c
kpsignal() at netbsd:kpsignal+0x85
itimerfire() at netbsd:itimerfire+0xc0
realtimerexpire() at netbsd:realtimerexpire+0x19
callout_softclock() at netbsd:callout_softclock+0x286
softintr_dispatch() at netbsd:softintr_dispatch+0x66
DDB lost frame for netbsd:Xsoftclock+0x32, trying 0xffff800048f78e10
Xsoftclock() at netbsd:Xsoftclock+0x32
--- interrupt ---
0x246:
db{0}> mach cpu 1
using CPU 1
db{0}> bt
sched_curcpu_runnable_p() at netbsd:sched_curcpu_runnable_p+0x18
idle_loop() at netbsd:idle_loop+0x134
Bad frame pointer: 0xffff800049001840

Any idea ?

Thanks in advance.

-- 
Nicolas Joly

Biological Software and Databanks.
Institut Pasteur, Paris.