tech-kern archive

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

Re: netbsd-5 NFS(?) lock up



On Tue, Mar 31, 2009 at 03:39:44PM +0200, Manuel Bouyer wrote:
> I setup a test box with a similar setup (hardware is not 100% identical
> unfortunably); and got a LOCKDEBUG panic:
> Mutex error: lockdebug_wantlock: locking against myself
> 
> lock address : 0x00000000ce88c028 type     :     sleep/adaptive
> initialized  : 0x00000000c03a5052
> shared holds :                  0 exclusive:                  1
> shares wanted:                  0 exclusive:                 11
> current cpu  :                  1 last held:                  1
> current lwp  : 0x00000000ce8edcc0 last held: 0x00000000ce8edcc0
> last locked  : 0x00000000c03aeff4 unlocked : 0x00000000c025da80
> owner field  : 0x00000000ce8edcc0 wait/spin:                1/0
> 
> Turnstile chain at 0xc0704e60.
> => Turnstile at 0xce955788 (wrq=0xce955798, rdq=0xce9557a0).
> => 0 waiting readers:
> => 10 waiting writers: 0xce943d00 0xce943300 0xce8f2560 0xce8ed7c0 0xce465020 
> 0xce8f22e0 0xce8f2a60 0xce8eda40 0xce8f2ce0 0xce4652a0
> 
> panic: LOCKDEBUG
> fatal breakpoint trap in supervisor mode
> trap type 1 code 0 eip c03f0e2c cs 8 eflags 246 cr2 cdee3000 ilevel 0
> Stopped in pid 261.1 (nfsd) at  netbsd:breakpoint+0x4:  popl    %ebp
> db{1}> tr
> breakpoint(c0641842,ce918728,c2cec800,c035aaaf,0,1,0,0,ce918728,8) at 
> netbsd:breakpoint+0x4
> panic(c0641844,c063d60e,c051629b,c063d5dd,b4a8,18edcc0,0,d08fef18,0,ce88c028) 
> at netbsd:panic+0x1b0
> lockdebug_abort1(c063d5dd,1,0,0,cbf524d0,ce8ede78,0,6,d0821438,ce918b10) at 
> netbsd:lockdebug_abort1+0xbb
> mutex_vector_enter(ce88c028,11,ce918b6c,c025cc47,ce88c000,0,cbf66300,ce44692c,c3b92c00,ce918b58)
>  at netbsd:mutex_vector_enter+0x464
> genfs_renamelock_enter(ce88c000,0,cbf66300,ce44692c,c3b92c00,ce918b58,ce918b54,ce918b44,ce8edcc0,0)
>  at netbsd:genfs_renamelock_enter+0x14
> nfsrv_rename(d0c8ca20,ce44692c,ce8edcc0,ce918bd0,cd117b40,c0701d58,0,c2cec918,c0701d58,0)
>  at netbsd:nfsrv_rename+0x4b7
> nfssvc_nfsd(ce918c38,804a2e0,ce8edcc0,0,0,0,0,0,0,ffffffff) at 
> netbsd:nfssvc_nfsd+0x3d6
> sys_nfssvc(ce8edcc0,ce918d00,ce918d28,bfbff000,ce478684,ce478684,2,4,804a2e0,bfbfee94)
>  at netbsd:sys_nfssvc+0x332
> syscall(ce918d48,b3,ab,bfbf001f,bbbd001f,11,1,bfbfee94,0,bfbffff0) at 
> netbsd:syscall+0xc8
> db{1}> mach cpu 0
> using CPU 0
> db{1}> tr
> __cpu_simple_lock(c2dee000,0,c01002a7,0,c01002a7,0,0,0,0,0) at 
> netbsd:__cpu_simp
> le_lock+0xd

This test box did another, strange panic (I have a core dump and netbsd.gdb
for those interested). This is perfectly reproductible !
2 linux client, one running a bonnie++, the second a build.sh of
a XEN3_DOM0 kernel.

fatal double fault in supervisor mode
trap type 13 code 80000000 eip c035c450 cs 8 eflags 10246 cr2 ce8acffc ilevel 0
kernel: supervisor trap double fault, code=0
Stopped in pid 313.1 (nfsd) at  netbsd:lockdebug_barrier:       pushl   %ebp
db{1}> tr
lockdebug_barrier(c071b380,1,0,c035c49a,8,0,ce8ad05c,c0360079,0,ffffffff) at net
bsd:lockdebug_barrier
assert_sleepable(0,ffffffff,ce8ad03c,c03f0ecd,cbf85480,0,ce8ad05c,c032c315,0,ce3
27000) at netbsd:assert_sleepable+0x2b
pool_cache_get_paddr(cbf85480,101,0,c035d70a,c3b4d400,0,ce8ad08c,c0388858,0,1) a
t netbsd:pool_cache_get_paddr+0xb9
m_get(0,1,ce8ad0cc,c03894f4,0,1,c06a80a0,c0388a76,0,1) at netbsd:m_get+0x2f
m_gethdr(0,1,c06a80a0,c0388a76,0,1,0,0,c3b4d400,5a4) at netbsd:m_gethdr+0x18
m_split0(1,0,0,c0388a76,0,1,0,0,c3bdc500,5a4) at netbsd:m_split0+0x184
m_split0(1,0,0,c0388a76,0,1,0,0,c3bc7f00,5a4) at netbsd:m_split0+0x208
m_split0(1,0,0,c0388a76,0,1,0,0,c3d4df00,5a4) at netbsd:m_split0+0x208
[about 100 entries like this]
m_split0(1,0,0,c0388a76,0,1,0,0,c3b4d500,5a4) at netbsd:m_split0+0x208
m_split0(1,0,0,c0388a76,0,1,0,0,c3d4b400,5a4) at netbsd:m_split0+0x208
m_split0(1,0,0,c0388a76,0,1,0,0,c3d3b500,5a4) at netbsd:m_split0+0x208
m_split0(1,0,0,c038831d,ce8aeafc,c3b4d500,0,0,c3b48500,5a4) at 
netbsd:m_split0+0x208
m_split0(1,0,0,ce8aeafc,c06a80a0,de168d34,ce8aeb0c,c0388adc,c3bda700,c06a80a0) 
at netbsd:m_split0+0x208
nfsrv_getstream(de168d34,0,ce8aeb38,ce8aeb5c,0,ce8aeb54,0,0,c027336a,ce91c800) 
at netbsd:nfsrv_getstream+0xbc
nfsrv_rcv(de168d34,1,ce8aebd4,ce8aebdb,cbf7ab40,c0712e18,0,c2d07918,c0712e18,0) 
at netbsd:nfsrv_rcv+0x1a9
nfssvc_nfsd(ce8aec38,804a2e0,ce91c800,0,0,0,ce8aec4c,0,0,ffffffff) at 
netbsd:nfssvc_nfsd+0x82d
sys_nfssvc(ce91c800,ce8aed00,ce8aed28,bfbff000,ce9a3278,ce9a3278,2,4,804a2e0,bfbfe84c)
 at netbsd:sys_nfssvc+0x332
syscall(ce8aed48,b3,ab,bfbf001f,bbbd001f,6,1,bfbfe84c,0,bfbffff0) at 
netbsd:syscall+0xc8
db{1}> mach cpu 0
using CPU 0
db{1}> tr
x86_mwait(0,0,0,c033c0d2,cbf87c80,cbf84ec0,cd136d2c,c0327d56,0,0) at netbsd:x86_
mwait+0xc
x86_cpu_idle_mwait(0,0,c032da29,0,0,0,c06adc48,cbf87c80,c0327bd0,cbf87c80) at ne
tbsd:x86_cpu_idle_mwait+0x4e
idle_loop(cbf87c80,0,c01002a7,0,c01002a7,0,0,0,0,0) at netbsd:idle_loop+0x186
db{1}> ps /l 
PID    LID S CPU     FLAGS       STRUCT LWP *               NAME WAIT
678      1 3   1        84           ce70e2c0                top select
535      1 3   1        84           ce70ecc0              inetd kqueue
7979     1 3   0        84           ce70e7c0       screen-4.0.3 pause
7738     1 3   0        84           ce4227a0               tcsh pause
8307     1 3   0        84           ce70e540               sshd select
7792     1 3   1        84           ce70ea40               sshd netio
2070     1 3   1         4           d542cae0               nfsd tstile
324      1 3   1         4           d542c5e0               nfsd tstile
316      1 3   1         4           cea11860               nfsd tstile
350      1 3   1         4           d542c360               nfsd tstile
337      1 3   1         4           ce90f560               nfsd tstile
313  >   1 7   1         4           ce91c800               nfsd
328      1 3   1         4           ce91ca80               nfsd biowait
327      1 3   1         4           ce91c300               nfsd tstile
329      1 3   0         4           ce904540               nfsd tstile
330      1 3   0         4           ce91c580               nfsd nfsdsock
335      1 3   1         4           ce90f2e0               nfsd tstile
338      1 3   0         4           ce904040               nfsd nfsdsock
339      1 3   1         4           ce90f7e0               nfsd genput
340      1 3   0         4           ce4a57a0               nfsd tstile
341      1 3   1         4           ce90fa60               nfsd tstile
343      1 3   0         4           ce4a52a0               nfsd nfsdsock
344      1 3   1         4           ce90fce0               nfsd tstile
323      1 3   0         4           ce91cd00               nfsd tstile
325      1 3   0         4           cea11ae0               nfsd nfsdsock
315      1 3   0         4           ce4a5520               nfsd nfsdsock
272      1 3   0        84           ce9042c0               nfsd select
937      1 3   0        84           ce9705a0               tcsh pause
999      1 3   1        84           cea8ca00                ksh pause
590      1 3   1        84           cea8c000               tcsh pause
620      1 3   0        84           cea8c280                top select
447      1 3   1        80           cea8c500               tcsh pause
475      1 3   0        84           ce9be5c0       screen-4.0.3 select
473      1 3   0        84           ce346860       screen-4.0.3 pause
548      1 3   1        80           cea8cc80               tcsh pause
445      1 3   0        84           cea110e0               sshd select
460      1 3   0        80           cea11360               sshd netio
503      1 3   0        80           cea11d60              getty ttyraw
504      1 3   1        80           ce9be0c0              getty ttyraw
413      1 3   1        80           ce91c080              getty ttyraw
412      1 3   0        80           ce346ae0              getty ttyraw
500      1 3   1        84           ce970320               cron nanoslp
485      1 3   1        84           ce9700a0             smartd nanoslp
446      1 3   0        84           ce970aa0           sendmail pause
434      1 3   0        84           ce3465e0               sshd select
160      1 3   0        84           ce970820               ntpd pause
98       1 3   1        84           ce970d20          rpc.lockd select
302      1 3   1        84           ce4a5020          rpc.statd select
237      1 3   1        84           ce904cc0             mountd select
203      1 3   0        84           ce433000            rpcbind select
159      1 3   0        84           ce433280            syslogd kqueue
134      1 3   0        84           ce433780           dhclient select
1        1 3   1        84           cbf96aa0               init wait
0       61 5   0       204           ce9be840           (zombie)
              58 3   0       204           ce4a5ca0            physiod physiod
              57 3   0       204           ce433a00            raidio3 raidiow
              56 3   0       204           ce433c80              raid3 rfwcond
              55 2   1       204           ce3460e0            raidio2
              54 3   1       204           ce346360              raid2 rfwcond
              53 3   1       204           ce346d60        vmem_rehash vmem_reha
sh
              52 3   0       204           ce3420c0           aiodoned aiodoned
              51 3   1       204           ce342340            ioflush syncer
              50 3   0       204           ce3425c0           pgdaemon pgdaemon
              49 3   1       204           ce342840            raidio1 raidiow
              48 3   1       204           ce342ac0              raid1 rfwcond
              47 3   0       204           ce342d40            raidio0 raidiow
              46 3   1       204           cbf960a0              raid0 rfwcond
              45 3   0       204           cbf95300          cryptoret crypto_wa
it
              42 3   1       204           cbf95080               usb2 usbevt
              41 3   1       204           cbf95800               usb3 usbevt
              40 3   1       204           cbf95580               usb0 usbevt
              39 3   0       204           cbf96320         usbtask-dr usbtsk
              38 3   0       204           cbf96d20         usbtask-hc usbtsk
              37 3   0       204           cbf96820               usb1 usbevt
              36 3   0       204           cbf965a0              unpgc unpgc
              27 3   0       204           cbf95a80               iic0 iicintr
              26 3   1       204           cbf95d00            atabus3 atath
              25 3   1       204           cbf94060            atabus2 atath
              24 3   1       204           cbf942e0            atabus1 atath
              23 3   0       204           cbf94560            atabus0 atath
              22 3   0       204           cbf947e0           scsibus9 sccomp
              21 3   0       204           cbf94a60           scsibus8 sccomp
              20 3   0       204           cbf94ce0               pms0 pmsreset
              19 3   1       204           cbf92040               apm0 apmev
              18 3   1       204           cbf922c0            xcall/1 xcall
              17 1   1       204           cbf92540          softser/1
              16 1   1       204           cbf927c0          softclk/1
              15 1   1       204           cbf92a40          softbio/1
              14 1   1       204           cbf92cc0          softnet/1
              13 1   1       205           cbf8a020             idle/1
              12 3   0       204           cbf8a2a0             sysmon smtaskq
              11 3   0       204           cbf8a520           pmfevent pmfevent
              10 3   0       204           cbf8a7a0           nfssilly nfssilly
               9 3   1       204           cbf8aa20            cachegc cachegc
               8 3   0       204           cbf8aca0              vrele vrele
               7 3   0       204           cbf87000            xcall/0 xcall
               6 1   0       204           cbf87280          softser/0
               5 1   0       204           cbf87500          softclk/0
               4 1   0       204           cbf87780          softbio/0
               3 1   0       204           cbf87a00          softnet/0
           >   2 7   0       205           cbf87c80             idle/0
               1 3   0       204           c06aaf60            swapper schedule

-- 
Manuel Bouyer <bouyer%antioche.eu.org@localhost>
     NetBSD: 26 ans d'experience feront toujours la difference
--


Home | Main Index | Thread Index | Old Index