Subject: Re: dmanext at end! (uh oh)
To: Ezra Story <ezy@panix.com>
From: Michael L. Hitch <osymh@gemini.oscs.montana.edu>
List: amiga
Date: 10/07/1994 11:34:15
On Oct 7, 6:52am, Ezra Story wrote:
>
> I've been getting this error (with subsequent disk lockup) intermittently
> (once 4 times in an hour) under heavy scsi disk load. Any hints?
The "dmanext at end" error indicates that the SCSI interface (the 33C93)
wants to transfer more data, but there isn't another DMA segment set up
for that transfer. This would normally indicate that the SCSI device is
trying to transfer more data then the I/O request passed to the driver.
This normally shouldn't happen on SCSI disks. I think there is a way that
the error can be forced though. If you make a request through the character
device (/dev/rsd*) and that request isn't a multiple of the block size,
the driver is going to set up the transfer expecting only the requested
size, but the disk is going to transfer the full block count of data. The
size of the transfer is rounded up to the next block boundary to compute the
number of blocks, but the DMA length is only going to be the requested size.
What will happen in this case is that the requested number of bytes of data
will be transferred, but the disk will still have the remainder of the last
block to transfer. The driver doesn't have any place to transfer that
data, and punts (the dmanext at end message). I'm not certain that the
driver will recover gracefully from this condition (I know the 53C710
driver doesn't).
Michael
--
Michael L. Hitch INTERNET: osymh@montana.edu
Computer Consultant
Office of Systems and Computing Services
Montana State University Bozeman, MT USA