Subject: locking problem on amd64 (w/ lfs)
To: None <current-users@netbsd.org>
From: Kurt Schreiner <ks@ub.uni-mainz.de>
List: current-users
Date: 11/12/2007 12:55:38
Hi,
while compiling userland (w/ -j 8) on my dual-opteron
box running a (customized) kernel compiled from fresh
sources with src- obj- and dest-dirs on lfs the machine
paniced while installing to dest. I can leave it in this
state to pull more info for debugging this if needed...
Kurt
tail of build.sh distribution log:
install ===> usr.sbin/lpr/lpd
install /u/NetBSD/arch/amd64/dest/usr/bin/Mail
install /u/NetBSD/arch/amd64/dest/usr/bin/mailx
install ===> usr.bin/make
install ===> gnu/usr.bin/gcc4/cc1obj
install /u/NetBSD/arch/amd64/dest/usr/sbin/lpd
install ===> usr.bin/make/PSD.doc
and what the console shows:
NetBSD/amd64 (isunopti) (console)
login: Kernel lock error: _kernel_lock: spinout
lock address : 0xffffffff80643ab0 type : spin
shared holds : 0 exclusive: 1
shares wanted: 0 exclusive: 1
current cpu : 1 last held: 0
current lwp : 0xffff800053f416e0 last held: 0xffff80004fadf340
last locked : 0xffffffff8029ae21 unlocked : 0xffffffff8029d4cf
initialized : 0xffffffff802707f9
curcpu holds : 0 wanted by: 0xffff800053f416e0
panic: LOCKDEBUG
Stopped in pid 3773.1 (x86_64--netbsd-i) at netbsd:breakpoint+0x1: ret
db{1}> bt
breakpoint() at netbsd:breakpoint+0x1
lockdebug_abort1() at netbsd:lockdebug_abort1+0x7f
lockdebug_abort() at netbsd:lockdebug_abort+0xa5
_kernel_lock() at netbsd:_kernel_lock+0x12d
uiomove() at netbsd:uiomove+0x16e
ubc_uiomove() at netbsd:ubc_uiomove+0xe0
lfs_write() at netbsd:lfs_write+0x7bd
VOP_WRITE() at netbsd:VOP_WRITE+0x47
vn_write() at netbsd:vn_write+0xfd
dofilewrite() at netbsd:dofilewrite+0x8a
sys_write() at netbsd:sys_write+0xab
syscall() at netbsd:syscall+0x197
db{1}> mach cpu 0
using CPU 0
db{1}> bt
x86_pause() at netbsd:x86_pause+0x2
lfs_writevnodes() at netbsd:lfs_writevnodes+0x1fd
lfs_segwrite() at netbsd:lfs_segwrite+0x23e
lfs_sync() at netbsd:lfs_sync+0xac
sync_fsync() at netbsd:sync_fsync+0x8c
VOP_FSYNC() at netbsd:VOP_FSYNC+0x52
sched_sync() at netbsd:sched_sync+0xe4
db{1}> ps
PID PPID PGRP UID S FLAGS LWPS COMMAND WAIT
14617 9209 8456 77 2 0 1 sh
4520 14136 14136 77 2 0x4000 1 cmp
13407 9538 8785 77 2 0x4000 1 cmp
24239 9488 24239 77 2 0x4000 1 sh
14136 8634 14136 77 2 0x4000 1 sh wait
1737 11200 11200 77 2 0x4000 1 cmp
9209 5752 8456 77 2 0x4000 1 sh wait
11200 10255 11200 77 2 0x4000 1 sh wait
9414 24084 24084 77 2 0x4000 1 x86_64--netbsd-i lfs_sdi
24084 6956 24084 77 2 0x4000 1 sh wait
15465 19294 19294 77 2 0x4000 1 nbmake
19294 28154 19294 77 2 0x4000 1 sh wait
9488 28433 28433 77 2 0x4000 1 nbmake select
28433 5397 28433 77 2 0x4000 1 sh wait
6956 21428 21428 77 2 0x4000 1 nbmake select
>3773 29349 29349 77 2 0x4000 1 x86_64--netbsd-i
21428 23137 21428 77 2 0x4000 1 sh wait
29349 3408 29349 77 2 0x4000 1 sh wait
3408 11743 11743 77 2 0x4000 1 nbmake select
11743 28154 11743 77 2 0x4000 1 sh wait
5752 8456 8456 77 2 0x4000 1 nbmake pipe
8456 3675 8456 77 2 0x4000 1 sh wait
9538 8785 8785 77 2 0 1 sh wait
27354 8785 8785 77 2 0x4000 1 sort pipe
8785 16954 8785 77 2 0x4000 1 sh wait
3675 19668 19668 77 2 0x4000 1 nbmake select
23137 21024 21024 77 2 0x4000 1 nbmake select
19668 6873 19668 77 2 0x4000 1 sh wait
21024 28338 21024 77 2 0x4000 1 sh wait
16954 4577 4577 77 2 0x4000 1 nbmake select
4577 6873 4577 77 2 0x4000 1 sh wait
28154 26053 26053 77 2 0x4000 1 nbmake select
26053 28649 26053 77 2 0x4000 1 sh wait
8634 15027 15027 77 2 0x4000 1 nbmake select
15027 4933 15027 77 2 0x4000 1 sh wait
10255 9501 9501 77 2 0x4000 1 nbmake select
9501 4933 9501 77 2 0x4000 1 sh wait
4933 1511 1511 77 2 0x4000 1 nbmake select
1511 6873 1511 77 2 0x4000 1 sh wait
28649 25123 25123 77 2 0x4000 1 nbmake select
25123 13614 25123 77 2 0x4000 1 sh wait
6873 354 354 77 2 0x4000 1 nbmake select
354 23130 354 77 2 0x4000 1 sh wait
28338 24312 24312 77 2 0x4000 1 nbmake select
5397 6806 6806 77 2 0x4000 1 nbmake select
24312 23130 24312 77 2 0x4000 1 sh wait
6806 23130 6806 77 2 0x4000 1 sh wait
13614 7314 7314 77 2 0x4000 1 nbmake select
7314 23130 7314 77 2 0x4000 1 sh wait
23130 10099 10099 77 2 0x4000 1 nbmake select
10099 5358 10099 77 2 0x4000 1 sh wait
5358 6645 6645 77 2 0x4000 1 nbmake select
6645 2530 6645 77 2 0x4000 1 sh wait
2530 27534 27534 77 2 0x4000 1 nbmake select
27534 17742 27534 77 2 0x4000 1 sh wait
17742 530 4130 77 2 0x4000 1 nbmake select
530 25075 4130 77 2 0x4000 1 sh wait
16652 27382 4130 77 2 0x4000 1 tee pipe
25075 27382 4130 77 2 0 1 sh wait
27382 4130 4130 77 2 0 1 sh wait
4130 412 4130 77 2 0x4000 1 sh wait
12458 7084 12458 77 2 0x4100 1 sysstat
7084 7275 7084 77 2 0x4000 1 tcsh pause
7275 5184 5184 77 2 0x100 1 sshd select
5184 269 5184 0 2 0x4101 1 sshd netio
412 410 412 77 2 0x4000 1 tcsh pause
410 306 306 77 2 0x100 1 sshd select
306 269 306 0 2 0x4101 1 sshd netio
329 1 329 0 2 0x4000 1 getty tty
415 1 415 0 2 0x4000 1 getty tty
342 1 342 0 2 0x4000 1 getty tty
403 1 403 0 2 0x4000 1 getty tty
411 1 411 0 2 0 1 cron nanoslp
409 390 390 12 2 0x4100 1 qmgr kqread
414 390 390 12 2 0x4100 1 pickup kqread
390 1 390 0 2 0x4100 1 master kqread
269 1 269 0 2 0 1 sshd select
259 1 259 15 2 0x100 1 ntpd
196 1 196 0 2 0 5 nfsd *
184 1 184 0 2 0 1 mountd select
157 1 157 0 2 0 1 lfs_cleanerd segment
113 1 113 0 2 0 1 rpcbind select
104 1 104 0 2 0 1 syslogd kqread
1 0 1 0 2 0x4001 1 init wait
0 -1 0 0 2 0x20002 33 system *
db{1}>