Hitachi HUS154530VLF400 User Manual

Page of 417
Hitachi Ultrastar 15K450 (FC-AL) Hard Disk Drive Specification
315 
21.6  SCSI Protocol
There are various operating conditions that prevent the Target from executing a SCSI command. This section describes each of 
these operating conditions and their relative priority.
21.6.1  Priority of SCSI Status Byte Reporting
After establishing the I_T_L nexus or I_T_L_Q nexus the Target must first determine whether command execution is allowed. 
Execution is deferred until a later time if the command must be added to the command queue. Execution may also be pre-
vented by an internal Target condition that requires the reporting of a Check Condition, Queue Full, Busy, or Reservation Con-
flict Status. There are several different internal conditions to be active at the same time. The order in which the Target checks 
for each of these conditions determines their priority (highest priority first) as follows:
1.   Check Condition status for invalid Logical Unit Number. (See Section 21.6.2, “Invalid LUN Processing” on page 315)
2.   Check Condition status for Incorrect Initiator Connection (See Section21.6.3, “Overlapped Commands” on page 315)
3.   Check Condition status for Unit Attention Condition (See Section 21.6.5, “Unit Attention Condition” on page 317
5.   Check Condition status for Deferred Error Condition (See Section 21.6.8, “Deferred Error Condition” on page 319)
6.   Check Condition status during Startup and Format operations (See Section “21.6.6, “Command Processing During 
7.   Reservation Conflict status (See Section 21.6.10, “Command Processing while Reserved” on page 327)
8.   Check Condition status for invalid command opcode
9.   Check Condition status for invalid command descriptor block
The highest priority internal condition that prevents command execution is reported by the Target provided there is no bus 
error.
For all Check Conditions Sense data is built by the target provided a valid LUN address is known. Sense data is cleared by the 
Target upon receipt of any subsequent command to the LUN from the initiator receiving the Check Condition.
21.6.2  Invalid LUN Processing
Any value other than zero in the FCP_LUN field of the FCP_CMD IU is invalid.
The target's response to an invalid LUN varies with the command, as follows:
Inquiry:  Execute the command, return the INQUIRY data that indicates unknown device type (byte 0 = 7Fh), and return 
GOOD status.  All other bytes are valid (see 19.5, “INQUIRY (12)” on page 125).
Request Sense:  Execute the command, return the sense data with the Sense Key set to Illegal Request and the Additional 
Sense Code  and Additional Sense Code Qualifier set to LOGICAL UNIT NOT SUPPORTED, and return GOOD status (see 
also 19.34, “REQUEST SENSE (03)” on page 257).
All Others:  Do not execute the command and return CHECK CONDITION status, along with the auto-sense data with the 
Sense Key set to Illegal Request and the Additional Sense Code and Additional Sense Code Qualifier set to LOGICAL UNIT 
NOT SUPPORTED.
In all cases, the target's response to the command for an invalid LUN does not affect the current execution of a command on 
the valid LUN for this initiator or any other initiator.
21.6.3  Overlapped Commands
Fibre Channel Protocol for SCSI Revision 012 (X3.269-1996) says the following:  "5.5.9  The value of the OX_ID is the tag 
defined by X3.270-1996.  Since the value of the OX_ID is required by FC-PH to be unique, there is no requirement for an FCP 
logical unit to check for overlapping commands."  Thus the drive does not perform any overlapped command checking.