NetBSD-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
kern/37993: panic: lockmgr: locking against myself (netbsd-4.0_STABLE)
>Number: 37993
>Category: kern
>Synopsis: panic: lockmgr: locking against myself (netbsd-4.0_STABLE)
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: kern-bug-people
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Mon Feb 11 00:30:00 +0000 2008
>Originator: Greg A. Woods
>Release: NetBSD 4.0_STABLE 2008/01/28
>Organization:
Planix, Inc.; Toronto, Ontario; Canada
>Environment:
System: NetBSD 4.0_STABLE GENERIC.MP
Architecture: i386
Machine: i386
>Description:
my Dell PE2650 has just crashed with the following panic and
backtrace while unpacking a big distfile:
panic: lockmgr: locking against myself
Stopped in pid 15777.1 (tar) at netbsd:cpu_Debugger+0x4: popl %ebp
Bad character
?
db{0}> trace
cpu_Debugger(c0941a14,fa02b4d8,0,246,8) at netbsd:cpu_Debugger+0x4
panic(c096d2b4,fa02b528,b858,0,0) at netbsd:panic+0x155
lockmgr(c0a35c24,10022,c0a35ccc,2800000,c0434357) at netbsd:lockmgr+0xb4a
uvm_unmap1(c0a35c20,fcfe0000,fd000000,2800000,f) at netbsd:uvm_unmap1+0xef
km_vacache_free(c0a35cf8,fcfe0000,fa02b5ac,c0436b44,c0a35c20) at
netbsd:km_vacache_free+0x35
pool_allocator_free(c0a35c20,81,fa02b5c0,fa02b5c0,c0a35cf8) at
netbsd:pool_allocator_free+0x13
pr_pagelist_free(c0a39540,c0a4ff20,fa02b5dc,0,c56ee110) at
netbsd:pr_pagelist_free+0x34
pool_put(c0a35cf8,fcfe9000,fa02b5fc,c0436b44,c0a39540) at netbsd:pool_put+0x58
pool_allocator_free(c0a39540,c56f49d0,fa02b61c,fa02b61c,fa02b618) at
netbsd:pool_allocator_free+0x13
pr_pagelist_free(0,d,c0ff26c0,0,f6458edc) at netbsd:pr_pagelist_free+0x34
pool_cache_invalidate(c0a4fe00,3f5000,0,0,3) at
netbsd:pool_cache_invalidate+0x85
pmap_growkernel(fd410000,fd400000,10000,fa02b6d8,0) at
netbsd:pmap_growkernel+0x1f4
uvm_map_prepare(c0a35c20,fd400000,10000,0,ffffffff) at
netbsd:uvm_map_prepare+0x3bb
uvm_map(c0a35c20,fa02b78c,10000,0,ffffffff) at netbsd:uvm_map+0xc0
uvm_km_alloc(c0a35c20,10000,10000,600001,10) at netbsd:uvm_km_alloc+0x9b
bufpool_page_alloc(c0a3aa78,0,fa02b7f0,fa02b7f0,c0a482a0) at
netbsd:bufpool_page_alloc+0x3a
pool_grow(e50d07ac,0,fa02b84c,c0435d1e,fa02b830) at netbsd:pool_grow+0x23
pool_catchup(fa02b830,1000010,0,0,e50d07ac) at netbsd:pool_catchup+0x21
pool_get(c0a3aa78,0,fa02b8b4,ee55628c,d7c13f30) at netbsd:pool_get+0x17e
allocbuf(e73f5678,4000,0,c0410344,0) at netbsd:allocbuf+0xa8
getblk(d7b3c2cc,85f0a40,0,4000,0) at netbsd:getblk+0x268
bread(d7b3c2cc,85f0a40,0,4000,ffffffff) at netbsd:bread+0x62
ffs_vget(c5571000,846780,0,fa02bbd4,c48f55fc) at netbsd:ffs_vget+0x322
ffs_valloc(f34a4178,41ed,cea60898,fa02bbd4,0) at netbsd:ffs_valloc+0x16e
ufs_mkdir(fa02bb18,fa02bc48,fa02bb2c,c04758e5,fa02bb20) at netbsd:ufs_mkdir+0xce
VOP_MKDIR(f34a4178,fa02bbd4,fa02bbe8,fa02bb54,0) at netbsd:VOP_MKDIR+0x31
sys_mkdir(d7c13f30,fa02bc48,fa02bc68,fa02bc50,202) at netbsd:sys_mkdir+0x195
syscall_plain() at netbsd:syscall_plain+0x198
--- syscall (number 136) ---
0x8079adb:
db{0}>
I have a complete crash dump preserved from this one. Let me
know what information I should extract that might be of use in
further diagnosis of this problem.
(Note the "Bad character" is apparently due to the following
setting: ddb.commandonenter: -> 'trace')
Note this machine has been "hanging" pretty much every night
recently during the run of /etc/daily, and occasionally (though
rarely enough not to be too annoying) during build activity.
Processes which don't do any I/O of any kind (including VM
faults) will continue to run just fine. Those that do fault
will be stuck in "vmmapva".
Attempts to reboot from DDB will usually trigger a "kernel:
supervisor trap page fault, code=0" while trying to unmount the
filesystems. (sometimes though it gives up syncing disks at
which point it just reboots without a second panic)
I have crash dumps preserved from each of these kinds of hangs too.
I don't know if this is related to the panic above or not. If
this isn't related then let me know so I can file a separate PR.
Note how I have to force it into DDB by sending a break from
conserver:
[-- break #1 sent -- `\z' -- Sat Feb 2 12:00:42 2008]
[Sat Feb 2 12:00:42 2008]Stopped at netbsd:cpu_Debugger+0x4: popl
%ebp
[Sat Feb 2 12:00:42 2008]Bad character
[Sat Feb 2 12:00:42 2008]?
[Sat Feb 2 12:00:42 2008]db{0}> trace
[Sat Feb 2 12:00:45 2008]cpu_Debugger(c52a8600,0,ce9dff38,c033f320,c52a8660)
at netbsd:cpu_Debugger+0x4
[Sat Feb 2 12:00:45 2008]comintr(c52a8600,0,ce9d0010,30,10) at
netbsd:comintr+0x6f0
[Sat Feb 2 12:00:45 2008]Xintr_ioapic_edge4() at netbsd:Xintr_ioapic_edge4+0x9c
[Sat Feb 2 12:00:45 2008]--- interrupt ---
[Sat Feb 2 12:00:45 2008]netbsd:cpu_switch+0xab:
[Sat Feb 2 12:00:45 2008]db{0}> ps
[Sat Feb 2 12:00:48 2008] PID PPID PGRP UID S FLAGS
LWPS COMMAND WAIT
[Sat Feb 2 12:00:48 2008] 18027 721 15 0 2 0x6000
1 sleep vmmapva
[Sat Feb 2 12:00:48 2008] 10280 11437 7718 0 2 0x4000
1 find vmmapva
[Sat Feb 2 12:00:48 2008] 23257 7718 7718 0 2 0x4100
1 smail piperd
[Sat Feb 2 12:00:48 2008] 14012 7718 7718 0 2 0x4000
1 tee piperd
[Sat Feb 2 12:00:48 2008] 11437 7718 7718 0 2 0x4000
1 sh wait
[Sat Feb 2 12:00:48 2008] 7718 16381 7718 0 2 0x4000
1 sh wait
[Sat Feb 2 12:00:48 2008] 16381 575 575 0 2 0
1 cron piperd
[Sat Feb 2 12:00:48 2008] 1077 1 1077 15 2 0x100
1 ntpd vnlock
[Sat Feb 2 12:00:48 2008] 809 1578 809 0 2 0x4002
1 ksh ttyin
[Sat Feb 2 12:00:48 2008] 6306 6739 6306 1000 2 0x4000
1 emacsserver select
[Sat Feb 2 12:00:48 2008] 6739 5166 6739 1000 2 0x4002
1 emacs vmmapva
[Sat Feb 2 12:00:48 2008] 5166 4836 5166 1000 2 0x4002
1 ksh ttyin
[Sat Feb 2 12:00:48 2008] 4836 175 175 0 2 0
1 sshd2 select
[Sat Feb 2 12:00:48 2008] 3308 3678 3308 1000 2 0x4002
1 ksh ttyin
[Sat Feb 2 12:00:48 2008] 3678 175 175 0 2 0
1 sshd2 select
[Sat Feb 2 12:00:48 2008] 1578 1441 1578 1000 2 0x4002
1 ksh pause
[Sat Feb 2 12:00:48 2008] 1441 175 175 0 2 0
1 sshd2 select
[Sat Feb 2 12:00:48 2008] 919 1 919 0 2 0x4002
1 getty ttyin
[Sat Feb 2 12:00:48 2008] 276 1 276 0 2 0x4002
1 getty ttyin
[Sat Feb 2 12:00:48 2008] 981 1 981 0 2 0x4002
1 getty ttyin
[Sat Feb 2 12:00:48 2008] 1009 1 1009 0 2 0x4002
1 getty ttyin
[Sat Feb 2 12:00:48 2008] 722 1 722 0 2 0x4002
1 getty ttyin
[Sat Feb 2 12:00:48 2008] 752 1 752 0 2 0x4002
1 getty ttyin
[Sat Feb 2 12:00:48 2008] 229 1 229 0 2 0x4002
1 getty ttyin
[Sat Feb 2 12:00:48 2008] 291 1 291 0 2 0x4002
1 login vnlock
[Sat Feb 2 12:00:48 2008] 575 1 575 0 2 0
1 cron vmmapva
[Sat Feb 2 12:00:48 2008] 667 1 667 0 2 0
1 inetd kqread
[Sat Feb 2 12:00:48 2008] 175 1 175 0 2 0
1 sshd2 select
[Sat Feb 2 12:00:48 2008] 721 1 15 0 2 0x4002
1 sh wait
[Sat Feb 2 12:00:48 2008] 446 1 446 0 2 0
1 rpc.lockd select
[Sat Feb 2 12:00:48 2008] 504 1 504 0 2 0xa0008
1 rpc.statd select
[Sat Feb 2 12:00:48 2008] 498 476 476 0 2 0
1 nfsd nfsd
[Sat Feb 2 12:00:48 2008] 502 476 476 0 2 0
1 nfsd nfsd
[Sat Feb 2 12:00:48 2008] 507 476 476 0 2 0
1 nfsd nfsd
[Sat Feb 2 12:00:48 2008] 563 476 476 0 2 0
1 nfsd nfsd
[Sat Feb 2 12:00:48 2008] 476 1 476 0 2 0
1 nfsd poll
[Sat Feb 2 12:00:48 2008] 464 1 464 0 2 0
1 mountd select
[Sat Feb 2 12:00:48 2008] 413 1 413 0 2 0
1 mount_mfs mfsidl
[Sat Feb 2 12:00:48 2008] 351 1 351 0 2 0
1 rpcbind poll
[Sat Feb 2 12:00:48 2008] 314 1 314 0 2 0
1 syslogd kqread
[Sat Feb 2 12:00:48 2008] 52 0 0 0 2 0x20200
1 physiod physiod
[Sat Feb 2 12:00:48 2008] 14 0 0 0 2 0x20200
1 aiodoned aiodone
[Sat Feb 2 12:00:48 2008] 13 0 0 0 2 0x20200
1 ioflush syncer
[Sat Feb 2 12:00:48 2008] 12 0 0 0 2 0x20200
1 pagedaemon pgdaemo
[Sat Feb 2 12:00:48 2008] 11 0 0 0 2 0x20200
1 atapibus0 sccomp
[Sat Feb 2 12:00:48 2008] 10 0 0 0 2 0x20200
1 cryptoret crypto_
[Sat Feb 2 12:00:48 2008] 9 0 0 0 2 0x20200
1 usbtask-dr usbtsk
[Sat Feb 2 12:00:48 2008] 8 0 0 0 2 0x20200
1 usbtask-hc usbtsk
[Sat Feb 2 12:00:48 2008] 7 0 0 0 2 0x20200
1 usb0 usbevt
[Sat Feb 2 12:00:49 2008] 6 0 0 0 2 0x20200
1 atabus1 atath
[Sat Feb 2 12:00:49 2008] 5 0 0 0 2 0x20200
1 atabus0 atath
[Sat Feb 2 12:00:49 2008] 4 0 0 0 2 0x20200
1 ipmi0 ipmi_po
[Sat Feb 2 12:00:49 2008] 3 0 0 0 2 0x20200
1 apm0 apmev
[Sat Feb 2 12:00:49 2008] 2 0 0 0 2 0x20200
1 sysmon smtaskq
[Sat Feb 2 12:00:49 2008] 1 0 1 0 2 0x4001
1 init wait
[Sat Feb 2 12:00:49 2008] 0 -1 0 0 2 0x20200
1 swapper schedul
[Sat Feb 2 12:00:49 2008]db{0}> cont
[Sat Feb 2 12:22:39 2008]
[Sat Feb 2 12:22:39 2008]
[-- break #1 sent -- `\z' -- Sat Feb 2 12:22:45 2008]
[Sat Feb 2 12:22:45 2008]Stopped at netbsd:cpu_Debugger+0x4: popl
%ebp
[Sat Feb 2 12:22:45 2008]Bad character
[Sat Feb 2 12:22:45 2008]?
[Sat Feb 2 12:22:45 2008]db{0}>
[Sat Feb 2 12:22:46 2008]
[-- break #1 sent -- `\z' -- Sat Feb 2 12:22:51 2008]
[Sat Feb 2 12:22:51 2008]Stopped at netbsd:cpu_Debugger+0x4: popl
%ebp
[Sat Feb 2 12:22:51 2008]Bad character
[Sat Feb 2 12:22:51 2008]?
[Sat Feb 2 12:22:51 2008]db{0}> trace
[Sat Feb 2 12:22:53 2008]cpu_Debugger(c52a8600,0,ce9dff38,c033f320,c52a8660)
at netbsd:cpu_Debugger+0x4
[Sat Feb 2 12:22:53 2008]comintr(c52a8600,0,ce9d0010,30,10) at
netbsd:comintr+0x6f0
[Sat Feb 2 12:22:53 2008]Xintr_ioapic_edge4() at netbsd:Xintr_ioapic_edge4+0x9c
[Sat Feb 2 12:22:53 2008]--- interrupt ---
[Sat Feb 2 12:22:53 2008]netbsd:cpu_switch+0xab:
[Sat Feb 2 12:22:53 2008]db{0}> reboot
[Sat Feb 2 12:22:55 2008]syncing disks... done
[Sat Feb 2 12:22:56 2008]unmounting file systems...kernel: supervisor trap
page fault, code=0
[Sat Feb 2 12:22:56 2008]Stopped at netbsd:getnewbuf+0x22: testb
$0x40,0x2b(%eax)
[Sat Feb 2 12:22:56 2008]Bad character
[Sat Feb 2 12:22:56 2008]?
[Sat Feb 2 12:22:56 2008]db{0}> reboot
[Sat Feb 2 12:22:59 2008]rebooting...
>How-To-Repeat:
heavy filesystem activity?
>Fix:
unknown
Home |
Main Index |
Thread Index |
Old Index