Proposal to add a new modifier to SCSI Write commands.

Joseph Glider/Almaden/IBM gliderj at
Tue Nov 26 14:20:04 PST 1996

* From the SCSI Reflector (scsi at, posted by:
* "Joseph Glider/Almaden/IBM" <gliderj at>
The problem with implementing a 'forced error' function that simply shows up as
an ECC error is that automatic reassignment algorithms are likely to end up
reassigning blocks that are perfectly good.

Any kind of 'forced error' implementation needs to include the capability of
seeing that the resulting error is 'logically bad' rather than physically bad.
Does the DEC patent entirely cover the concept of 'logically bad' or just using
the mechanism of using the ones complement of CRC to signal logically bad?

        coughlan @ (Tom)
11-26-96 04:16 PM

To: SCSI @ Symbios.COM @ gw
cc:  (bcc: Joseph Glider/Almaden/IBM)
Subject: Proposal to add a new modifier to SCSI Write commands.

* From the SCSI Reflector (scsi at, posted by:
* coughlan at (Tom)
   Some implementations of disk mirroring use the SCSI Write Long
   command.  Write Long is used to propagate an unrecovered read error
   from one member of the mirror set to all the other members.  This
   ability to create error-for-error identical volumes is an important
   feature for some mirror set implementations.  There are some
   problems, though, with the Write Long mechanism:

    - It is impossible for the Initiator to be certain that a particular
      Write Long data pattern will generate a subsequent read error.  This
      is because the error correction algorithms are complex and are not
      known by the host (nor should they be).

    - Storage vendors are growing reluctant to support Read and Write Long,
      because they expose the internals of the error detection scheme which
      are usually vendor specific and subject to change.

    - It is relatively difficult to determine the transfer length that the
      device supports for Read Long.

   Because of these issues, Read Long and Write Long are on many people's
   list of commands that should be obsoleted eventually.

   I would like to propose an alternative to the Write Long mechanism to
   provide the "forced error" behavior.  The idea is to add a bit to the
   Write commands that instructs the drive to force an ECC error for all
   subsequent reads of the block.  The drive is free to implement this
   command in any convenient way, provided that all subsequent reads
   result in a "Medium Error", "Unrecovered Read Error".  A subsequent write
   to the block with the "force error" bit clear would return the block to
   normal status.  Write commands with the "force error" bit set will be
   restricted to one block transfer lengths.

   This would allow us to phase out Read Long and Write Long, while
   improving the function they provide today for mirroring.  Target devices
   should (not required) implement the Command Support Inquiry data, so
   that the initiator will be able to easily determine whether the new
   Write bit is supported.

   The cost is the addition of a bit-check to every Write command.
   Checking the bit wouldn't be too costly, though, since it could be
   checked for zero at the same time that the other bits in the Write
   CDB are checked.

   In the interest of full disclosure:
   Digital holds a patent on a technique for forcing errors that is similar
   to the one described here.  It has been determined that this proposal
   does not infringe on the Digital patent.  This determination must be
   reassessed if the current proposal is modified.

   I'd like to request that this topic be added to a future Working
   Group agenda.


   Tom Coughlan
   OpenVMS SCSI Project Leader
   Digital Equipment Corporation
   Nashua, New Hampshire
   tom.coughlan at
* For SCSI Reflector information, send a message with
* 'info scsi' (no quotes) in the message body to majordomo at

* For SCSI Reflector information, send a message with
* 'info scsi' (no quotes) in the message body to majordomo at

More information about the T10 mailing list