NetBSD-Bugs archive

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

Re: kern/45827: panic: LOCKDEBUG (Reader / writer lock error: lockdebug_unlocked: no shared locks held by LWP)



The following reply was made to PR kern/45827; it has been noted by GNATS.

From: "Greg A. Woods" <woods%planix.ca@localhost>
To: NetBSD GNATS <gnats-bugs%NetBSD.org@localhost>
Cc: 
Subject: Re: kern/45827: panic: LOCKDEBUG (Reader / writer lock error: 
lockdebug_unlocked: no shared locks held by LWP)
Date: Wed, 25 Jan 2012 22:39:16 -0800

 I think I can now confirm this issue is almost certainly related to
 something in the sysctl() path.
 
 I've now done a couple of successful "build.sh" runs on both the PE2950
 and the HP EliteBook, while resisting the urge to watch the system with
 "top" and/or "systat" and there have been no crashes.
 
 Just for fun I then ran a "build.sh -j 3" on my VirtualBox test system,
 and ran "systat -w 1 vm" in another window on it and in short order I
 was greeted with the following on its serial console:
 
 (note, FYI, I had ddb.onpanic=2 and see how the "automatic" stack
 backtrace fails miserably)
 
 Reader / writer lock error: lockdebug_unlocked: no shared locks held by LWP
 
 lock address : 0x00000000c0d52cc0 type     :     sleep/adaptive
 initialized  : 0x00000000c04e0af3
 shared holds :                  0 exclusive:                  0
 shares wanted:                  0 exclusive:                  0
 current cpu  :                  0 last held:              65535
 current lwp  : 0x00000000d83dd280 last held: 000000000000000000
 last locked  : 0x00000000c04e0191 unlocked : 0x00000000c04e0382
 owner/count  : 000000000000000000 flags    : 0x0000000000000008
 
 Turnstile chain at 0xc0d53200.
 => No active turnstile for this lock.
 
 panic: LOCKDEBUG
 Begin traceback...
 
copyright(d6ee8503,0,0,d7f627f4,d6ee8e40,d6ee8dd8,c0d52cc0,c0c3b0dc,0,c04e0191) 
at 0xc0b90608
 Bad frame pointer: 0xd6ee8540
 End traceback...
 fatal breakpoint trap in supervisor mode
 trap type 1 code 0 eip c05cc07c cs 8 eflags 246 cr2 bbb5d000 ilevel 0
 Stopped in pid 1178.1 (systat) at       netbsd:breakpoint+0x4:  popl    %ebp
 db{0}> trace
 breakpoint(c0b916ab,1,ffff,c0bfe82c,c04fc4b0,1,0,0,d84a6ac8,8) at 
netbsd:breakpoint+0x4
 panic(c0b905a8,c0b8d4cf,c09363ab,c0b90608,c04e0382,13dd280,0,8,1,c0d52cc0) at 
netbsd:panic+0x1b0
 lockdebug_abort1(c0b90608,1,1,c0d5c120,0,0,c0d5c120,c3598220,68,7fffffff) at 
netbsd:lockdebug_abort1+0xbb
 
rw_vector_exit(c0d52cc0,68,d84a6c0c,c0533bd5,0,bbbdba98,68,1,c053e708,d83dd280) 
at netbsd:rw_vector_exit+0xc8
 sysctl_unlock(0,bbbdba98,68,1,c053e708,d83dd280,0,18,1,d801eb74) at 
netbsd:sysctl_unlock+0x12
 sysctl_dobuf(d84a6ca4,4,bbb54000,d84a6ccc,0,0,d84a6c9c,d83dd280,c333d980,0) at 
netbsd:sysctl_dobuf+0xc5
 sysctl_dispatch(d84a6c9c,6,bbb54000,d84a6ccc,0,0,d84a6c9c,d83dd280,c333d980,0) 
at netbsd:sysctl_dispatch+0xcf
 
sys___sysctl(d83dd280,d84a6d00,d84a6d28,14a6d40,d83dd280,c0c3dd00,ca,bfbfdf3c,6,bbb54000)
 at netbsd:sys___sysctl+0xd6
 syscall(d84a6d48,b3,ab,1f,1f,bfbfdf3c,bbb54000,bfbfde98,0,6) at 
netbsd:syscall+0xcf
 db{0}> call _kernel_lock_dump
 curcpu holds :                  0 wanted by: 000000000000000000
 0x40
 db{0}> machine cpu 1
 using CPU 1
 db{0}> trace
 x86_stihlt(0,0,0,0,0,0,c3334048,40,d7297da0,c0c3ed38) at netbsd:x86_stihlt+0x5
 idle_loop(0,c04c0710,cc613cc0,c01002d0,0,c01002cd,0,c01002cd,0,0) at 
netbsd:idle_loop+0x186
 Bad frame pointer: 0xcc613cc0
 db{0}> call _kernel_lock_dump
 curcpu holds :                  0 wanted by: 000000000000000000
 0x40
 db{0}> 
 
 -- 
                                                Greg A. Woods
                                                Planix, Inc.
 
 <woods%planix.com@localhost>       +1 250 762-7675        
http://www.planix.com/
 


Home | Main Index | Thread Index | Old Index