SCSI cache behavior

dallas at dallas at
Thu Apr 20 14:57:35 PDT 1995

I would like to thank everyone who answered my questions
on cache behavior.  The responses I got were interesting
but the responses did not answer the basic question of
what the SCSI-2 defined behavior actually is.  The basic
responses I got were the following:
	Some device manufacturers will do everything possible
	to ensure that for completed I/O processes cached writes
	get written to media. (In my opinion the correct behavior)

	Some device manufacturers drop the cached write data
	on the floor for completed I/O .

The the basic premise upon which I based the question is that 
no one really knows what the behavior is.  The O.S. developers
don't know so we don't code our drivers to use this feature
which is in a lot of devices.  The questions relate to basic data 
integrity issuses which most of todays operating systems try
to preserve and to operate in an environment that has an
undefined model is not in the best interests of your customers

It seems to me that this feature is just going to waste since it is 
not being used for what it was intended.

Clarifing SCSI-2 will do no good due to the fact that
there are lots of devices out in the market place that 
we O.S. people still have to live and deal with.
What I would like to see in SCSI-3 for device caches is a clear
and definitive behavior model.  

Are there any device manufacturers out there willing to pick
up this task (defining the model) that the O.S folks can live
and operate with, or would you like me to bring in paper at some 
point in time? 

Bill Dallas
(Digital Equipment Corporation)


Attached are my original questions:

I have a couple of questions about SCSI-2 disk drives write cache
behavior and was wondering if I could get a definitive answer here.  I
am asking theses questions here because I have talked to a number of
folks and everyone has a different opinion of what the behavior is for
write-back cache operation and resets.

Disk drive has write-back cache enabled and a bus reset occurs:
	For all completed (cmd comp. msg. sent ) I/O Processes that has
	write data in the cache that has not been placed on media.

	What happens to that write data, does it get flushed to the bit
	bucket, does it flush it to media or does it not do any special
	processing of that data and will get to media at some point in

SCSI-2 states:
	The effect of the reset condition on I/O processes which have
	not completed, .......

I can not find anywhere in the spec where a reset condition effects
completed I/O processes.

If the behavior of reset condition does not effect an completed I/O
processes and the associated write data for completed I/O processes is
flushed to media, what happens if:
	A media error is encountered:
		Is the media error reported as a deferred error along
		with the UNIT ATTENTION for the CA generated by the
		reset condition?

What about tapes that are running in buffered mode?  

Thank you from your time contemplating these questions.

Bill Dallas

More information about the T10 mailing list