6.Command Specification

RESERVE UNIT

3rd Party: Third Party Release allows an initiator to reserve a logical for third party operations. If the value in this field is 0b, a Logical Unit reserve is requested.

If 3rdPty = 1b, the Logical Unit reserves the specified logical unit, but only if the initiator, 3rdPty bit, and Third Party Device ID fields (in CDB or in Parameter List). The Logical Unit retains this information to determine when a 3rd Party release function is valid.

LongID: If the Long ID bit is set to 1b and 3rd Party is set to 1b and the Parameter List Length is 8, the parameter list contains the eight bytes of the device ID of the Third Party Device ID.

If the 3RDPTY bit is zero, the LONGID bit field is ignored.

This is required for Fiber Channel since each Device ID is at least three bytes long.

Third-Party Device ID: If the Third-Party bit is ZERO, then the Third-Party Reservation option is not requested. If the 3rdPty bit is one, a RESERVE UNIT reserves the drive for the SCSI device specified in the Third-Party Device ID field (LongID = 0b) or the parameter data (LongID = 1b). The Logical Unit preserves the reservation until any one of the conditions mentioned above occurs.

The Logical Unit ignores any attempt made by any other initiator to release the reservation and returns GOOD status.

If the Third Party Device ID value is equal to or smaller than 255, the LongID field may be 0b and the Third Party Device ID value is sent in this field.

The contents of the Third Party Device ID field in the CDB is ignored when LongID = 1b; see Parameter List Length. Note: If the Third Party Device ID value is greater than 255 (FFh), LongID must be set to 1b.

Parameter List Length: The contents of this field specify the length, in bytes, of the parameter list that is transferred from the initiator to the Logical Unit.

If the 3RDPTY bit is set to ZERO or LongID is set to ZERO, the PARAMETER LIST LENGTH field is ignored. The field value is ignored when LongID = 0b.

The field value must be at least 8 when LongID = 1b.

If LongID = 0b and Parameter List Length is not ZERO, the command is terminated with CHECK CONDITION status and the Sense Key is set to ILLEGAL REQUEST. The Additional Sense Code is set to INVALID FIELD IN CDB.

If LongID = 1b and Parameter List Length is not at least eight (8), the command is terminated with CHECK CONDITION status and the Sense Key is set to ILLEGAL REQUEST. The Additional Sense Code is set to INVALID FIELD IN CDB.

An initiator that holds a current reservation may modify that reservation e.g., switch third-parties by issuing another RESERVE UNIT command to the drive.

If the logical unit has previously been reserved by another initiator, the Logical Unit returns RESERVATION CONFLICT status.

When the LongID bit = 1b, the parameter list has the format shown in Table 6-93.

Table 6-93: RESERVE (10) LongID Only Parameter List — Data Format

Bit

7

6

5

4

3

2

1

0

Byte

 

 

 

 

 

 

 

 

0 - 7

(MSB)

 

 

Third Party Device ID

 

 

 

 

 

 

 

 

 

(LSB)

The Logical Unit supports superseding reservations. If a superseding reservation cannot be granted because of conflicts with a previous reservation, other than the reservation being superseded, the Logical Unit returns RESERVATION CONFLICT status.

6-96

SONY AIT-3Ex drive SDX-800V series Ver.1.1

Page 154
Image 154
Sony SDX-800V/R manual Msb