SPC-4: Late letter ballot comment READ ATTRIBUTE
Kevin D Butt
kdbutt at us.ibm.com
Fri Mar 29 10:41:50 PDT 2013
Formatted message: <a href="http://www.t10.org/cgi-bin/ac.pl?t=r&f=r1303290_f.htm">HTML-formatted message</a>
I have noticed an issue with SPC-4 READ ATTRIBUTE command and the new
CACHE bit. The definition seems to be incomplete and misses the case where
cache=1b, the medium is present but there is no attribute data cached.
I am requesting a late letter ballot comment to address this issue of
cache=1b, MAM inaccessible, and not attribute information is cached.
SPC-4 in the beginning of the READ ATTRIBUTE command should be modified to
read:
If the medium is present<< and the cache bit is set to zero>> but the
medium auxiliary memory is not accessible, the READ ATTRIBUTE command
shall be terminated with CHECK CONDITION status, with the sense key set to
MEDIUM ERROR, and the additional sense code set to LOGICAL UNIT NOT READY,
AUXILIARY MEMORY NOT ACCESSIBLE.
If the medium auxiliary memory is not operational, the READ ATTRIBUTE
command shall be terminated with CHECK CONDITION status, with the sense
key set to MEDIUM ERROR, and the additional sense code set to AUXILIARY
MEMORY READ ERROR.
and in the description of the CACHE bit:
A CACHE bit set to one specifies that, if medium is not present, then the
device server may report attribute information cached from the most
recently mounted medium. A CACHE bit set to zero specifies that the device
server shall not report attribute information cached from the most
recently mounted medium. The READ ATTRIBUTE command shall be terminated
with CHECK CONDITION status, with the sense key set to NOT READY, and the
additional sense code set to MEDIUM NOT PRESENT if the CACHE bit set to:
a) zero, and medium auxiliary memory is not accessible because there is no
medium present; or
b) one, and the device server does not have a cache of attribute
information read from the most recently mounted medium <<and the medium is
not present>>.
<<The READ ATTRIBUTE command shall be terminated with CHECK CONDITION
status, with the sense key set to MEDIUM ERROR, and the additional sense
code set to LOGICAL UNIT NOT READY, AUXILIARY MEMORY NOT ACCESSIBLE is the
cache bit is set to one and the device server does not have a cache of
attribute information read from the most recently mounted medium and the
medium auxiliary memory is not accessible.>>
If medium is mounted and the CACHE bit is supported, then <<attribute
information shall be reported for the mounted medium and >>the CACHE bit
shall be ignored.
Attribute information from cache may or may not be the complete set of
attribute information from the most recently mounted medium. The device
server shall clear cached attribute information at the start of a medium
load.
==== Explanation ====
Since the requirement is "shall clear cached attribute information at the
start of a medium load" it is possible, even if cache=1b, to have no
cached attributes when medium is present and MAM is not accessible. This
would be during the first part of the load. This case was previously
ignored when the cache bit was brought in.
The unique conditions are:
cache=0b:
Medium not present:
cached attribute information exists;
The response should be NOT READY, MEDIUM NOT PRESENT
cached attribute information does not exist;
The response should be NOT READY, MEDIUM NOT PRESENT
Medium present but MAM is not accessible:
cached attribute information exists;
The response should be MEDIUM ERROR, LOGICAL UNIT NOT READY AUXILIARY
MEMORY NOT ACCESSIBLE
cached attribute information does not exist;
The response should be MEDIUM ERROR, LOGICAL UNIT NOT READY AUXILIARY
MEMORY NOT ACCESSIBLE
Medium present but MAM is not operational
The response should be MEDIUM ERROR, AUXILIARY MEMORY READ ERROR
cache=1b:
Medium not present:
cached attribute information exists;
The response should be GOOD status with attributes returned.
cached attribute information does not exist;
The response should be NOT READY, MEDIUM NOT PRESENT
Medium present but MAM is not accessible:
cached attribute information exists;
The response should be GOOD status with attributes returned.
cached attribute information does not exist;
The response should be MEDIUM ERROR, LOGICAL UNIT NOT READY AUXILIARY
MEMORY NOT ACCESSIBLE
<<Note that this case is not specified in the standard, but is what
logically follows>>
Medium present but MAM is not operational
The response should be MEDIUM ERROR, AUXILIARY MEMORY READ ERROR
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