User Manual

SCSI Commands Reference Manual, Rev. J 197
www.seagate.com Direct Access Block commands (SPC-5 and SBC-4)
3.39 RESERVE (10) command
This command has been declared obsolete by the T10 committee. However, it is included because it may be implemented on
some products.
3.39.1 RESERVE (10) command introduction
The RESERVE(10) command (see table 166) is used to reserve a logical unit.
The RESERVE and RELEASE commands provide a basic mechanism for contention resolution in multiple-initiator systems. The
third-party reservation allows logical units to be reserved for another specified SCSI device. See 5.5.1 for a general description of
reservations and the commands that manage them.
If the RESERVE(10) command is implemented, then the RELEASE(10) also shall be implemented.
Byte 1 Bit 0 and Byte 2 provide an obsolete way to reserve extents within a logical unit. If Byte 1, Bit 0 is equal to one, device
servers not implementing the obsolete capability shall terminate the command with CHECK CONDITION status and the sense
key shall be set to ILLEGAL REQUEST.
3.39.2 Logical unit reservation
Logical unit reservations are mandatory if the RESERVE(10) command is implemented. This command shall request that the
entire logical unit be reserved for the exclusive use of the initiator until the reservation is superseded by another valid RESERVE
command from the same initiator or until released by a RELEASE command from the same initiator that made the reservation, by
a TARGET RESET task management function performed by any initiator, by a hard reset condition, or by a power on cycle. A
logical unit reservation shall not be granted if the logical unit is reserved by another initiator. It shall be permissible for an
initiator to reserve a logical unit that is currently reserved by that initiator. If the LONGID bit or the 3RDPTY bit is zero then the
PARAMETER LIST LENGTH field shall be ignored.
If the logical unit is reserved for another initiator, the device server shall return RESERVATION CONFLICT status. After honoring a
logical unit reservation, the device server shall check each newly received command for reservation conflicts.
For multiple port implementations, devices on other ports (i.e., the ports that do not include the initiator to which the
reservation has been granted) also shall be denied access to the logical unit as described in the preceding clause.
Table 166 RESERVE (10) Command
Bit
Byte
7 6 5 4 3 2 1 0
0 OPERATION CODE (56h)
1 Reserved 3RDPTY Reserved LONGID Obsolete
2 Obsolete
3 THIRD-PARTY DEVICE ID
4 Reserved
5 Reserved
6 Reserved
7 (MSB)
PARAMETER LIST LENGTH
8 (LSB)
9 CONTROL