Deferred error in REQUEST SENSE parameter data - order causes a problem
Kevin D Butt
kdbutt at us.ibm.com
Fri Aug 26 10:52:17 PDT 2011
Formatted message: <a href="http://www.t10.org/cgi-bin/ac.pl?t=r&f=r1108260_f.htm">HTML-formatted message</a>
CAP recently made a change to the ordered list of allowable sense data to
be returned in REQUEST SENSE parameter data by adding in deferred error
sense data. This is in the ordered list shown below as 1-5.
One of my engineers pointed out a problem with having this order (i.e., 5
before 6) and as such we believe the order needs to be reversed to be
pollable sense prior to deferred error sense.
The reason is that an initiator that is polling for status on an immediate
command is looking for one of the additional sense codes that indicate
processing is in progress (e.g., OPERATION IN PROGRESS). When it sees
sense data that is some other additional sense code - as will happen with
a deferred error, the initiator believes the operation is complete. In
fact, if recovered errors are allowed and a device implements reporting
temporary errors, these might happen on immediate commands (e.g., format,
verify, etc) and they might happen many times. These all would get in the
way of polling for process completion.
6.29 REQUEST SENSE command
....
Except as described elsewhere in this subclause, the device server shall
process a REQUEST SENSE command as follows:
1) return applicable sense data in the parameter data as follows:
1) if the logical unit that reports a peripheral qualifier of 011b or 001b
in its standard INQUIRY data (see 6.4.2), then return parameter data
containing sense data with the sense key set to ILLEGAL REQUEST and the
additional sense code shall be set to LOGICAL UNIT NOT SUPPORTED;
2) if the logical unit that reports a peripheral qualifier of 000b in its
standard INQUIRY data because it has a peripheral device connected but is
not ready for access, then return parameter data containing sense data
appropriate to the condition that is making the logical unit not
operational;
3) if the REQUEST SENSE command was received on an I_T nexus with a
pending unit attention condition, then return parameter data containing
sense data for the unit attention and clear the unit attention condition
as described in SAM-4;
4) if a recovered error occurs during the processing of the REQUEST SENSE
command, then return parameter data containing sense data with the sense
key set to RECOVERED ERROR;
5) if deferred error sense data (see 4.5.5) is available, then return
parameter data containing sense data for the deferred error;
6) return pollable sense data (see 5.6.2), if any; or
7) return parameter data containing sense data with the sense key set to
NO SENSE and the additional sense code set to NO ADDITIONAL SENSE
INFORMATION;
and
2) complete the REQUEST SENSE command with GOOD status.
Thanks,
Kevin D. Butt
SCSI & Fibre Channel Architect, Tape Firmware
Data Protection & Retention
MS 6TYA, 9000 S. Rita Rd., Tucson, AZ 85744
Tel: 520-799-5280
Fax: 520-799-2723 (T/L:321)
Email address: kdbutt at us.ibm.com
More information about the T10
mailing list