Subject: sii bug (3100 disk controller) apparently fixed!
To: None <port-pmax@NetBSD.ORG>
From: Jonathan Stone <jonathan@DSG.Stanford.EDU>
List: port-pmax
Date: 05/23/1997 21:25:40
(Since Michael hasn't yet announced it...)

Michael Hitch has replicated, found, and fixed the bug in the
3100/2100 scsi-chip driver (sii.c) that's been reported so much
recently.   

Michael replicated the problem on an rz56, turned on copoius driver
debugging.  The problem is that when the driver was doing a large
write, the would disk disconnects in the middle of a DMA transfer and
send a `save data pointer' message.  The driver wasn't saving the DMA
state if the SCSI phase was DMA out.

Fixing that bug seems to have truly fixed the problem.  Michael and I
have gotten feedback from several people that the fix works for them.
Erik Bertelsen has even unpacked and built all of X11R6.3 on a 3100
with an RZ56.

Erik Bertelsen reports that the bug first appeared in early December
96, when MAXBSIZE (and so the maximum transfer size through the
filesystem) changed from 16Kbytes to 64K.  We think that most disks
can handle 16K in a single gulp, but 64K is too much for some drives,
causing them to disconnect.

So we have a bug, a fix, and a cause that correlates with first
appearance of the bug.  I think we can declare this bug dead.


Kudos and thanks to Michael, and to everyone who reported the problem
and tried out test kernels!