NetBSD-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: kern/38758: LOCKDEBUG kernel hangs in esp(4) driver
The following reply was made to PR kern/38758; it has been noted by GNATS.
From: Hauke Fath <hf%spg.tu-darmstadt.de@localhost>
To: gnats-bugs%NetBSD.org@localhost
Cc: Izumi Tsutsui <tsutsui%ceres.dti.ne.jp@localhost>,
kern-bug-people%NetBSD.org@localhost,
gnats-admin%NetBSD.org@localhost
Subject: Re: kern/38758: LOCKDEBUG kernel hangs in esp(4) driver
Date: Tue, 27 May 2008 16:37:27 +0200
Izumi Tsutsui wrote:
>>> Synopsis: LOCKDEBUG kernel hangs in esp(4) driver
>
> At least esp(4) on sun3/80 works fine with DEBUG+LOCKDEBUG+DIAGNOSTIC
> (though it's too slow) so maybe your problem is mac68k specific.
sun3 uses real DMA, doesn't it? Different code paths, probably. The
mac68k MD code doesn't use simple_lock() anywhere, though.
Here's the output from a LOCKDEBUG netbsd-4 kernel:
NetBSD 4.0_STABLE (DEBUG) #0: Tue May 27 15:59:40 CEST 2008
hf@Hochstuhl:/var/obj/netbsd-builds/4/mac68k/sys/arch/mac68k/compile/DEBUG
Apple Macintosh Quadra 650 (68040)
cpu: delay factor 1280
total memory = 136 MB
avail memory = 128 MB
[...]
esp0 at obio0 addr 0 (quick): address 0x3a6000: NCR53C96, 16MHz, SCSI ID 7
scsibus0 at esp0: 8 targets, 8 luns per target
[...]
scsibus0: waiting 2 seconds for devices to settle...
sd0 at scsibus0 target 0 lun 0: <SEAGATE, ST336706LW, 010A> disk fixed
sd0: 35003 MB, 26302 cyl, 4 head, 681 sec, 512 bytes/sect x 71687370 sectors
sd0: async, 8-bit transfers, tagged queueing
boot device: sd0
root on sd0a dumps on sd0b
simple_lock: lock held
lock: 0xcb11c4, currently at: /public/netbsd-4/sys/dev/ic/ncr53c9x.c:2084
last locked: /public/netbsd-4/sys/dev/ic/ncr53c9x.c:2084
last unlocked: /public/netbsd-4/sys/dev/ic/ncr53c9x.c:2799
?(?)
_simple_lock(cb11c4,27ccca,824) at 0
ncr53c9x_intr(cb1000,1,17d8e2,cb1000,c82f88) + 38
esp_quick_dma_go(cb1000,cb1000,3) + 100
ncr53c9x_intr(cb1000) + 10d8
esp_intr(cb1000) + 1a
via2_intr(0) + 50
intr_dispatch(68) + 48
intrhand(?)
mi_switch(30700c,0) + a
ltsleep(a9aef00,11,29cabc,0,a9aef08) + 340
biowait(a9aef00,a9aef00,4200) + 60
readdisklabel(2,236444,d62800,c68be0,d62a00,d62a00) + 7e
sdopen(401,0,6000,0) + 2ea
sdsize(401,12000,cc70,80060492,f9000080) + ac
cpu_dumpconf(10d30,ffffcffc,480,0,1000) + 36
main(392ff4,251526,78e000,1000,30b80c) + 1dc
low() + 2
Stopped at netbsd:cpu_Debugger+0x6: unlk a6
db> ps
PID PPID PGRP UID S FLAGS LWPS COMMAND WAIT
2 0 0 0 2 0x20200 1 scsibus0 sccomp
1 0 0 0 2 0x20000 1 init initexe
0 -1 0 0 2 0x20200 1 swapper biowait
db>
Like the -current LOCKDEBUG kernel ist doesn't even make it to a
single-user prompt, but panics instead of locking up.
hauke
--
The ASCII Ribbon Campaign Hauke Fath
() No HTML/RTF in email Institut fu"r Nachrichtentechnik
/\ No Word docs in email TU Darmstadt
Respect for open standards Ruf +49-6151-16-3281
Home |
Main Index |
Thread Index |
Old Index