Subject: SCSI errors on my Quadra 800
To: NetBSD List <port-mac68k@NetBSD.ORG>
From: Dennis Eberl <drw@adelphia.net>
List: port-mac68k
Date: 01/23/1998 00:58:17
Hi everyone,

I am having perplexing SCSI errors running v1.3 on a Quadra 800 with 40 MB
RAM, 1.2 GB HD, stock CD-ROM drive, and a Zip drive.  The problem I will
describe occurred in exactly the same form when running v1.2 NetBSD.
(Incidentally, I did a clean install of v1.3.)

Briefly, I am getting SCSI error messages that always result in a SCSI bus
reset. While all of this is happening (typically several minutes) the
console is frozen. The problem seems benign enough in that I have found no
file damage and, indeed, in the middle of editing a file with vi the SCSI
monster did its little dance and then politely returned me safe and sound
to where I left off in vi. The problem does not occur on this machine when
running OpenBSD.

Some context might be helpful. This is the chunck of the boot messages I
get regarding what NetBSD finds on my SCSI bus at boot time.

   ...
   esp0 at obio0 (quick): address 0x897000 : NCR53C96, 16MHz, SCSI ID 7
   scsibus0 at esp0: 8 targets
   sd0 at scsibus0 targ0 lun0: <DEC, DSP3107LS, 440C> SCSU2 0/direct fixed
   sd0: 1021MB, 3117 cyl, 8 head, 83 sec, 512 bytes/sec x 2091144 sectors
   cd0 at scsibus0 targ3 lun0: <SONY, CD-ROM CDU-8003A, 1.9a> SCSI2 5/cdrom
removable
   sd1 at scsibus0 targ5 lun0: <IOMEGA, ZIP 100, D.08> SCSI2 0/direct removable
   sd1: 96MB, 96 cyl, 64 head, 32 sec, 512 bytes/sect x 196608 sectors
   ...

All this seems normal to me, but I include it in case it contains some
information you will need (e.g., NCR controller chip number, HD drive
manufacturer/model, etc.).

The disruption always begins with the following:

   # dmaintr: discarded 32 b (last transfer was 7664 b).
   esp0: !TC [intr 10, stat 83, step 4] prevphase 0, resid 1df0

After a short time it is followed by a sequence of messages culminating in
a reset of the SCSI bus as shown below.

   sd0(esp0:0:0): esp0: timed out [ecb 0x6b9209e (flags 0x3, dleft 1df0,
stat0)], <stat 4, nexus 0xcb9209e,
    phase(c 3, p 3 ), resid 0, msg(q 0, o 0) >
   sd0(esp0:0:0): esp0: timed out [ecb 0x6b9209e (flags 0x43, dleft 1df0,
stat0)], <stat 4, nexus 0xcb9209e
   , phase(c 3, p 3 ), resid 0, msg(q 20, o 0) > AGAIN
   esp0: SCSI bus reset
   Dec 29 14:45:08 /netbsd: dmaintr: discarded 32 b (last transfer was 7664 b).
   Dec 29 14:47:17 /netbsd: esp0: !TC [intr 10, stat 83, step 4] prevphase
0, resid 1df0
   Dec 29 14:47:17 /netbsd: sd0(esp0:0:0): esp0: timed out [ecb 0x6b9209e
(flags 0x3, dleft 1df0, stat0)],
    <stat 4, nexus 0xcb9209e, phase(c 3, p 3 ), resid 0, msg(q 0, o 0) >
   Dec 29 14:47:17 /netbsd: sd0(esp0:0:0): esp0: timed out [ecb 0x6b9209e
(flags 0x43, dleft 1df0, stat0)],
    <stat 4, nexus 0xcb9209e, phase(c 3, p 3 ), resid 0, msg(q 20, o 0) > AGAIN
   Dec 29 14:47:17 /netbsd: esp0: SCSI bus reset

Since the Quadra 800 is an '040 machine I am using the appropriate kernel
per NetBSD instructions (NetBSD 1.3 GENERIC #56). (I tried the kernel
designed for '030 machines with SCSI problems and found no difference --
i.e., I continued to have the same same problem.)

Gee, I'm having a lot of fun learning Unix and building a small LAN, but
this one sure puts a *fly* in my soup. Can anybody help? This is my second
attempt to send mail to list. Hope it makes it this time.

Gratefully,

Dennis Eberl