This message is from the T13 list server.

On Tue, 26 Feb 2002 21:16:10 -0800, Mcgrath, Jim wrote:
>This message is from the T13 list server.
>Practical impact is that I don't think you can get fewer bytes on a
>successful WRITE BUFFER command (or MODE SELECT, or LOG SELECT, etc...).

But this is another example of "the problem" (as a confused Pat tried
to point out before). If the host side does program the DMA engine
for a larger transfer (perhaps because it really doesn't understand
the CDB) then again with today's stupid DMA engines the host has no
way to determine how much data the device accepted (or if any data
was transferred to the device).

There are three places where today's stupid DMA engines cause data
integrity problems:

* On read commands, when the device sends less data than the DMA
engine was programmed to transfer. How much data was transferred?
This can happen on commands like Request Sense, Inquiry, or on
devices that have variable sized data blocks.

* On write commands, when the host side programs the DMA engine to
transfer more data than the devcie wants. How much data was
transferred? This is not a pratice we incourage but host folks do
this as Pat and other have tried to point out. Many of us think this
is a bad pratice on an x86, even call it a broken host, but this
really is a problem with today's stupid DMA engines.

* On any DMA transfer using today's stupid DMA engines it is not
possible to determine what that DMA engine did. It is a state machine
that follows a program (the PRD list) but there is no way for the
host to determine just what the DMA engine did with that PRD list. I
find it amazing that we must live with such crappy designs that fail
to address problems that were known and solved in computers in the
1950's and 1960's. X86 PCI bus commputers are toys... Get used to
it... There is no way to perform high reliability on such systems...
There just isn't enough status information (or even error detection
hardware) available to the host side to determine what happen.



*** Hale Landis *** www.ata-atapi.com ***



Subscribe/Unsubscribe instructions can be found at www.t13.org.

Reply via email to