Request Sense (03h)
The Request Sense
command (03) requests the library transfer sense data to the initiator.
Logical libraries use an FC-2 conforming transport that provides autosense. This means that sense data for a failed command is always returned with a Check Condition status in the command response and is never saved by the target. Therefore, Request Sense
will always return Sense Data with a Sense Key set to No Sense and ASC/ASCQ fields set to 0.
However, all Sense Keys and associated ASC/ASCQ fields that can be returned by other commands are documented here.
Figure 3-29 Descriptor Block - Request Sense (03h)

Description of "Figure 3-29 Descriptor Block - Request Sense (03h)"
- Desc
-
The Desc bit indicates which sense data format shall be returned.
The library returns a value of 0, indicating fixed format sense data is returned.
- Allocation Length
-
This field specifies the number of bytes that the initiator has allocated for returned sense data. The library provides a maximum of 14h (20d) bytes of sense data.
Request Sense Data Definitions
Figure 3-30 Descriptor Block - Request Sense Data Definitions

Description of "Figure 3-30 Descriptor Block - Request Sense Data Definitions"
- Valid
-
0 = The library does not return data in the Information field.
- Error Code
-
70h = The library returns only current errors.
- Segment Number
-
00h = The library does not support segment numbers.
- Sense Key
-
Describes the error, along with ASC and ASCQ. See Additional Sense Codes and Qualifiers.
0h = No Sense, indicating a successful command.
2h = Not Ready
3h = Medium Error
4h = Hardware Error
5h = Illegal Request
6h = Unit Attention
Bh = Aborted Command
- Information
-
00h = The library does not support this field.
- Additional Sense Length
-
0Ch = Indicates there are 12d bytes of additional sense bytes to follow. This value is not truncated to reflect the actual transfer length.
- Command Specific Information
-
00h = The library does not support this field.
- Additional Sense Code (ASC)
-
Describes the error. See Additional Sense Codes and Qualifiers.
- Additional Sense Code Qualifier (ASCQ)
-
Describes the error. See Additional Sense Codes and Qualifiers.
- Field Replaceable Unit Code
-
00h = The library does not support this field.
- SKSV (Sense Key Specific Valid)
-
1 = The C/D and field pointer are valid
0 = Ignore the C/D and field pointer
- C/D (Command/Data)
-
0 = The check condition status resulted from illegal parameter in the parameter list.
1 = The check condition status resulted from illegal parameter in the CDB.
- BPV (Bit Pointer Valid)
-
0 = The library does not support this field.
- Bit Pointer
-
0h = The library does not support this field.
- Field Pointer
-
The number of the byte where the error occurred. When a multiple-byte field is in error, the Field Pointer contains the value of the most significant byte of the field, which is lowest byte number. Byte numbers start at 00.
Additional Sense Codes and Qualifiers
Not Ready Sense Key Code (2h)
The library generates a Not Ready
error code if you send a command when the library is in a not ready state.
Description | Sense Key | ASC | ASCQ |
---|---|---|---|
Not Ready, Maintenance Mode |
2h |
04h |
81h |
Hardware Error Sense Key Code (4h)
The library generates a Hardware Error if it detects a hardware or firmware error during command execution.
Description | Sense Key | ASC | ASCQ |
---|---|---|---|
Hardware Error, Tape Drive |
4h |
40h |
02h |
Hardware Error, Internal Target Failure |
4h |
44h |
00h |
- Hardware Error, Tape Drive
-
An operation to the drive failed. The problem could be the tape drive or the interface between the library and tape drive.
- Hardware Error, Internal Target Failure
-
The library generates a hardware error when an unexpected condition is detected by ACSLS software that controls the SCSI interface. This error is used for arbitrary limitations of the software.
Illegal Request Sense Key Code (5h)
Any illegal parameters in the CDB or parameter list for a particular command generates an Illegal Request sense key.
In some cases, additional information is available in Byte 15 of the sense data, which includes the sense-key-specific-value (SKSV) and command/data (C/D) fields. This information indicates the byte in the command descriptor block or the parameter list that is in error. If available, the SKSV bit in the sense data is set to 1.
Description | Sense Key | ASC | ASCQ | SKSV |
---|---|---|---|---|
Invalid Command Operation Code |
5h |
20h |
00h |
Yes |
Invalid Element Address |
5h |
21h |
01h |
No |
Invalid Field in CDB |
5h |
24h |
00h |
Yes |
Logical Unit Not Supported |
5h |
25h |
00h |
No |
Incompatible Medium |
5h |
30h |
00h |
No |
Saving Parameters Not Supported |
5h |
39h |
00h |
Yes |
Medium Not Present, Drive Not Unloaded |
5h |
3Ah |
00h |
No |
Destination Element Full |
5h |
3Bh |
0Dh |
No |
Source Element Empty |
5h |
3Bh |
0Eh |
No |
Unit Attention Sense Key Code (06h)
The library generates a Unit Attention sense key for all initiators if the library needs to inform the host of an asynchronous event.
Description | Sense Key | ASC | ASCQ |
---|---|---|---|
Not Ready-to-Ready Transition |
06h |
28h |
00h |
CAP Element Accessed |
06h |
28h |
01h |
Mode Parameters Changed |
06h |
2Ah |
01h |
Reservations Preempted |
06h |
2Ah |
03h |
Reservations Released |
06h |
2Ah |
04h |
Registrations Preempted |
06h |
2Ah |
05h |
LUNs Data Has Changed |
06h |
3Fh |
0Eh |
- Not Ready to Ready Transition
-
The library transitioned to a Ready state from a Not Ready state. The library sends this unit attention to all initiators.
- CAP Element Accessed
-
The operator opened and closed the CAP. The library sends this unit attention to all initiators. You can issue a
Read Element Status
command to obtain an updated inventory (see Read Element Status (B8h). - Mode Parameters Changed
-
The operator added or removed elements from a partition. Send a Read Element Status (B8h) command to obtain an updated inventory. Send a
Mode Sense
command with Element Address page code to request the current count of each element type. - Persistent Reservations/Registrations Preempted or Released
-
A different initiator issued a
Persistent Reservation Out
command that cleared the registration for this initiator or cleared a reservation that affects this initiator. - LUNs Data Has Changed
-
The LUN configuration for the initiator has changed. The library sends this unit attention when the operator adds or removes a LUN connection from a partition for the initiator.