User Manual

SCSI Commands Reference Manual, Rev. J 198
www.seagate.com Direct Access Block commands (SPC-5 and SBC-4)
3.39.3 Third-party reservation
Third-party reservations are mandatory if the RESERVE(10) command is implemented. The third-party reservation for the
RESERVE(10) command allows an application client to reserve a logical unit within a logical unit for another SCSI device. This is
intended for use in multiple initiator systems that use the COPY or EXTENDED COPY command.
3RDPARTY bit
0 If the third-party (3RDPTY) bit is zero, then a third-party reservation is not requested. If the 3RDPTY bit is zero then the LONGID bit shall
be ignored.
1 If the 3RDPTY bit is one then the device server shall reserve the specified logical unit for the SCSI device specified in the THIRD-PARTY
DEVICE ID field. Device ID formats are protocol specific. The device server shall preserve the reservation until it is superseded by another
valid RESERVE command from the initiator that made the reservation or until it is released by the same initiator, by a TARGET RESET task
management function performed by any initiator, a hard reset condition, or by a power on cycle. The device server shall ignore any
attempt to release the reservation made by any other initiator.
After a third-party reservation has been granted, the initiator that sent the RESERVE command shall be treated like any other
initiator. Reservation conflicts shall occur in all cases where another initiator is not allowed access due to the reservation.
If independent sets of mode parameters are implemented, a third-party reservation shall cause the device server to transfer the
set of mode parameters in effect for the application client that sent the RESERVE command to the mode parameters used for
commands from the third-party device. Any subsequent command issued by the third-party device shall be executed according
to the mode parameters in effect for the application client that sent the RESERVE command.
THIRD-PARTY DEVICE ID field
If the THIRD-PARTY DEVICE ID value associated with the reservation release is smaller than 255, the LONGID bit may be zero and the ID value
sent in the CDB. Device ID formats are protocol specific. If the THIRD-PARTY DEVICE ID is greater than 255, the LONGID bit shall be one. If the
LONGID bit is one, the THIRD-PARTY DEVICE ID field in the CDB shall be ignored. If the LONGID bit is one, the parameter list length shall be at
least eight. If the LONGID bit is one and the parameter list length is less than eight, the device server shall return a CHECK CONDITION status
with a sense key of ILLEGAL REQUEST.
Device servers that support device IDs greater than 255 shall accept commands with LONGID equal to one. Device servers whose
devices IDs are limited to 255 or smaller may reject commands with LONGID equal to one with CHECK CONDITION status and a
sense key of ILLEGAL REQUEST.
If the LONGID bit is one, the parameter list length shall be eight, and the parameter list shall have the format shown in table 167.
If the LONGID bit is one and the parameter list length is not eight, the device server shall return a CHECK CONDITION status with
a sense key of ILLEGAL REQUEST.
3.39.4 Superseding reservations
Superseding reservations is mandatory if the RELEASE(10) command is implemented. An application client that holds a current
logical unit reservation may modify that reservation by issuing another RESERVE command to the same logical unit. The
superseding RESERVE command shall release the previous reservation state when the new reservation request is granted. The
current reservation shall not be modified if the superseding reservation request is not granted. If the superseding reservation
cannot be granted because of conflicts with a previous reservation, other than the reservation being superseded, then the
device server shall return RESERVATION CONFLICT status.
Table 167 RESERVE (10) ID only parameter list
Bit
Byte
7 6 5 4 3 2 1 0
0
THIRD-PARTY DEVICE ID. . .
7