NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

kern/38732: proplib locking error



>Number:         38732
>Category:       kern
>Synopsis:       proplib has locking issues
>Confidential:   no
>Severity:       critical
>Priority:       high
>Responsible:    kern-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Fri May 23 18:40:00 +0000 2008
>Originator:     oster%netbsd.org@localhost
>Release:        NetBSD 4.99.63
>Organization:
>Environment:
System: NetBSD hapi 4.99.63 NetBSD 4.99.63 (GENERICLD) #0: Thu May 22 15:58:15 
CST 2008  root@hapi:/u1/builds/build203/src/sys/arch/amd64/compile/GENERICLD 
amd64
Architecture: amd64
Machine: amd64
>Description:
        proplib seems to have some locking issues... 

Reader / writer lock error: lockdebug_wantlock: locking against myself
 
lock address : 0xffff800064a11fa0 type     :     sleep/adaptive
shared holds :                  1 exclusive:                  0
shares wanted:                  1 exclusive:                  0
current cpu  :                  3 last held:                  3
current lwp  : 0xffff80007568b800 last held: 0xffff80007568b800
last locked  : 0xffffffff8071c607 unlocked : 0xffffffff8071c645
initialized  : 0xffffffff8071d0af
owner/count  : 0x0000000000000010 flags    : 0x0000000000000008
 
Turnstile chain at 0xffffffff80c6ee00.
=> No active turnstile for this lock.
 
panic: LOCKDEBUG
Stopped in pid 2085.1 (envstat) at      netbsd:breakpoint+0x5:  leave
db{3}> tr
breakpoint() at netbsd:breakpoint+0x5
panic() at netbsd:panic+0x260
lockdebug_abort1() at netbsd:lockdebug_abort1+0xd3
rw_vector_enter() at netbsd:rw_vector_enter+0x2f1
prop_dictionary_iterator() at netbsd:prop_dictionary_iterator+0x77
_prop_dictionary_externalize() at netbsd:_prop_dictionary_externalize+0xba
prop_dictionary_externalize() at netbsd:prop_dictionary_externalize+0x40
_prop_object_copyout_ioctl() at netbsd:_prop_object_copyout_ioctl+0x12e
sysmonioctl_envsys() at netbsd:sysmonioctl_envsys+0x4da
VOP_IOCTL() at netbsd:VOP_IOCTL+0x6b
vn_ioctl() at netbsd:vn_ioctl+0x6d
sys_ioctl() at netbsd:sys_ioctl+0x134
syscall() at netbsd:syscall+0x9a
db{3}> 



>How-To-Repeat:
        run GENERIC+LOCKDEBUG/DEBUG/DIAGNOSTIC kernel on amd64
        do something like 'envstat -d mfi0'
        *boom*

        Additional details available upon request.

>Fix:
        dunno.



Home | Main Index | Thread Index | Old Index