Command progress proposal for SPC
exabyte!smtplink!tedl at uunet.uu.net
exabyte!smtplink!tedl at uunet.uu.net
Wed Nov 16 06:40:07 PST 1994
Determining the status of an immediate command X3T10/94-244r0
To: Membership of X3T10
From: Edward Lappin
Exabyte Corporation
tedl at exabyte.com
(303) 447-7718
Date: November 15, 1994
Subject: Determining the status of an immediate command
Background:
During the SSC discussion on 11/10/94, it was concluded that we
need a clarification on the definition of ready for sequential
devices (such as tape). We agreed on the following rules:
1. If the volume is being mounted or unmounted, the logical
unit shall return CHECK CONDITION to a TUR command, with an
appropriate status (depends if unloading or loading).
2. If the volume is mounted, the logical unit shall return
GOOD STATUS in response to a TUR.
3. If the volume is not mounted, the logical unit shall
return NOT READY in response to a TUR.
Therefore, the processing of an immediate command (such as erase
immediate) will not change the ready status of the logical unit.
Because of this, another reporting mechanism is required to
determine if an immediate command is in progress and the
approximate stage of processing.
Proposal:
1. That a new ASC/ASCQ pair be added to SCSI-3 SPC.
ASC ASCQ DTLPWRSOMC Description
00 16 DTLPWRSOMC IMMEDIATE COMMAND IN PROGRESS
2. That the Sense-key specific section of Request Sense in SCSI-
3 SPC be amended to change the text for the progress
indication bytes.
Old text:
If the sense key is NOT READY and the SKSV bit is one, the
sense-key specific field shall be as shown in table 45.
These fields only apply to the FORMAT UNIT command with the
Immed bit set to one.
New text:
If the sense key is NOT READY or NO SENSE and the SKSV bit is
one, the sense-key specific field shall be as shown in table
45.
Old table caption:
Table 45 - Format progress indication bytes
New table caption:
Table 45 - Progress indication bytes
Notes:
1. This change removes the requirement that the FORMAT UNIT
immediate command change the ready status to NOT READY. If
needed, this requirement can be stated in SBC.
2. Any ASC/ASCQ may report a progress indication if the sense
key is NOT READY. However, to make sense, the progress
indication should only be used if there is progress to
report, such as progress towards ready, or possibly, progress
towards completion of the not ready (such as unloading a
tape).
3. Any ASC/ASCQ may report a progress indication if the sense
key is NO SENSE. This change allows a device to support the
reporting of relative progress for any command without
changing the ready status of the device. Currently, I
believe that only immediate commands would report a progress
indication with NO SENSE but I do not believe we should
restrict this reporting if a device wishes to support it. If
no command is in progress and there is no expected change in
the ready state of the device, the SKSV bit shall be 0.
4. The use of the ASC/ASCQ of LOGICAL UNIT NOT READY, FORMAT IN
PROGRESS would still be used if the logical unit reports NOT
READY. If the logical unit reports READY, the ASC/ASCQ of
IMMEDIATE COMMAND IN PROGRESS should be used instead.
5. It is the intent of this change to allow an initiator to poll
the logical unit with REQUEST SENSE to determine if the
immediate command has completed, and if supported, determine
the progress of the command. Polling with TUR will not work
since the logical unit is ready (though it is not guaranteed
to be able to queue or process the command). It is not the
intent of this change to report CHECK CONDITION on a TUR
command while an immediate command is in progress.
More information about the T10
mailing list