User Manual
SCSI Commands Reference Manual, Rev. J 251
www.seagate.com Direct Access Block commands (SPC-5 and SBC-4)
[a] A write operation to a logical unit that supports protection information and has not been formatted with protection
information shall be terminated with CHECK CONDITION status with the sense key set to ILLEGAL REQUEST and the additional
sense code set to INVALID FIELD IN CDB.
[b] If the logical unit does not support protection information the requested command should be terminated with CHECK
CONDITION status with the sense key set to ILLEGAL REQUEST and the additional sense code set to INVALID FIELD IN CDB.
[c] If the device server has knowledge of the contents of the LOGICAL BLOCK APPLICATION TAG field, and the ATO bit is set to one
in the Control mode page (see 5.3.12), then the device server:
a) may check each logical block application tag if the RWWP bit is set to zero in the Control mode page (see 5.3.12); and
b) shall check each logical block application tag if the RWWP bit is set to one in the Control mode page.
If the ATO bit in the Control mode page (see 5.3.12) is set to one, then this knowledge is acquired from:
a) the EXPECTED LOGICAL BLOCK APPLICATION TAG field and the LOGICAL BLOCK APPLICATION TAG MASK field in the CDB,
if a WRITE (32), WRITE ATOMIC (32), WRITE SAME (32), or a WRITE STREAM (32) command is received by the device server;
b) the Application Tag mode page (see 5.3.6), if a command other than WRITE (32), WRITE ATOMIC (32), WRITE SAME (32), or
a WRITE STREAM (32) command is received by the device server and the ATMPE bit in the Control mode page (see 5.3.12)
is set to one or
c) a method not defined by this standard, if a command other than WRITE (32), WRITE ATOMIC (32), WRITE SAME (32), or a
WRITE STREAM (32) command is received by the device server, and the ATMPE bit is set to zero.
[d] If an error is reported, the sense key shall be set to ABORTED COMMAND.
[e] Device server shall preserve the contents of protection information (e.g., write to medium, store in non-volatile memory).
[f] The device server shall write a properly generated CRC into each LOGICAL BLOCK GUARD field.
[g] If the RWWP bit in the Control mode page (see 5.3.12) is set to one, then the device server shall terminate the command with
CHECK CONDITION status with the sense key set to ILLEGAL REQUEST and the additional sense code set to INVALID FIELD IN
CDB. If the RWWP bit is set to zero, and:
a) type 1 protection is enabled, then the device server shall write the least significant four bytes of each LBA into the
LOGICAL BLOCK REFERENCE TAG field of each of the written logical blocks; or
b) type 2 protection or type 3 protection is enabled, then the device server shall write a value of FFFF_FFFFh into the
LOGICAL BLOCK REFERENCE TAG field of each of the written logical blocks.
[h] If the ATO bit is set to one in the Control mode page (see 5.3.12), the device server shall write FFFFh into each LOGICAL BLOCK
APPLICATION TAG field. If the ATO bit is set to zero, the device server may write any value into each LOGICAL BLOCK
APPLICATION TAG field.
[i] If multiple errors occur, the selection of which error to report is not defined by this manual.
[j] If type 1 protection is enabled, the device server checks the logical block reference tag by comparing it to the lower 4 bytes of
the LBA associated with the logical block. If type 2 protection or type 3 protection is enabled, the device server checks the
logical block reference tag if it has knowledge of the contents of the logical block reference tag field. If type 2 protection is
enabled, then this knowledge may be acquired through the expected initial logical block reference tag field in a WRITE (32),
WRITE ATOMIC (32), WRITE SAME (32), or a WRITE STREAM (32) command. If type 3 protection is enabled, then the method for
acquiring this knowledge is not defined by this manual.
[k] If the NO_PI_CHK bit is set to one in the Extended INQUIRY Data VPD page (see 5.4.9) and the device server detects:
a) a LOGICAL BLOCK APPLICATION TAG field set to FFFFh and type 1 protection or type 2 protection is enabled; or
b) a LOGICAL BLOCK APPLICATION TAG field set to FFFFh, LOGICAL BLOCK REFERENCE TAG field set to FFFF_FFFFh, and type
3 protection is enabled,
then the device server shall not check any protection information in the associated protection information interval.
Table 217 WRPROTECT field (Sheet 2 of 2)
Code
Logical unit
formatted
with
protection
information
Field in protection
information [k]
Device server check
If check fails [d] [i],
additional sense code