SPC Read Attribute clarification request

Mike Berhan mikeb at bustrace.com
Wed Mar 5 12:01:11 PST 2008


* From the T10 Reflector (t10 at t10.org), posted by:
* "Mike Berhan" <mikeb at bustrace.com>
*
Offset 8-9 of the Read Attribute CDB is defined as the "FIRST ATTRIBUTE
IDENTIFIER."  The definition of this field, from SPC-4, is:
Quote #1:  "The FIRST ATTRIBUTE IDENTIFIER field specifies the attribute
identifier of the first attribute to be returned. If the specified attribute
is in the unsupported state or nonexistent state (see 5.10), the READ
ATTRIBUTE command shall be terminated with CHECK CONDITION status, with the
sense key set to ILLEGAL REQUEST, and the additional sense code set to
INVALID FIELD IN CDB."
My questions are for Service Action 00h - ATTRIBUTE VALUES.  SPC states:
Quote #2:  "The READ ATTRIBUTE command with ATTRIBUTE VALUES service action
returns parameter data containing the attributes specified by the PARTITION
NUMBER, VOLUME NUMBER, and FIRST ATTRIBUTE IDENTIFIER fields in the CDB.
The returned parameter data shall contain the requested attributes in
ascending numerical order by attribute identifier value and in the format
shown in table 146 "
For the sake of discussion, let's say my device supports the following
Attribute IDs:
0003h
0401h
0408h
Question #1:  If a Read Attribute - Attribute Values - Attribute ID = 0000h
is submitted to the device, should it return an invalid field in CDB check
condition (per Quote #1 above) or should it simply return an array of
attributes with the Attribute 0 entry = 0003h, Attribute 1 = 0401h,
Attribute 2 = 0408h?  I have two devices from two different vendors that
handle it differently.
Question #2:  If a Read Attribute - Attribute Values - Attribute ID = 0401h
is submitted to the device, should the device return only attribute 0401h or
should it return 0401h followed by 0408h.  Here too, the two devices behave
differently.
In my reading of the specification, I believe SPC is telling me that, for
Question #1, the check condition should occur.	For Question #2, I believe
it should return 0401h followed by 0408h.  Is this the correct
understanding?
Thank you for the clarification.
-------
Mike Berhan
busTRACE Technologies
9700 Village Center Drive
Suite 50-F
Granite Bay, CA  95746
916.773.4554 phone
916.218.6283 fax
http://www.bustrace.com
*
* For T10 Reflector information, send a message with
* 'info t10' (no quotes) in the message body to majordomo at t10.org



More information about the T10 mailing list