MODE SELECT SP bit question - UPDATED
lohmeyer at t10.org
Fri Jan 28 10:26:24 PST 2011
Formatted message: <a href="http://www.t10.org/cgi-bin/ac.pl?t=r&f=r1101284_f.htm">HTML-formatted message</a>
Similar wording goes all the way back to SCSI-2:
"...and shall save to a non-volatile vendor-specific location all the savable
pages including any sent during the DATA OUT phase."
It appears to me that the intention then was to save all the saveable pages.
At 1/28/2011 10:48 AM, you wrote:
>I was just surprised by one of my engineers telling me that the SP bit in
the MODE SELECT command set to one indicates that ALL saveable mode
parameters - not just those sent in this MODE SELECT command - are supposed
to be saved. I thought it meant to save the saveable parameters of those
sent in this MODE SELECT command. The text in SPC-4r29 states:
><<An SP bit set to one specifies that the device server shall perform the
specified MODE SELECT operation, and shall save
>to a nonvolatile vendor specific location all the saveable mode pages
including any sent in the Data-Out Buffer.>>
>When I read this, I see the "including any sent in the Data-Out Buffer" and
I have to conclude that my engineer is correct.
>His statement is, "In mode select, if SP=1 it seems like SPC explicitly
indicates that all pages which are saveable (even if they were not sent in
the mode select parameter data) shall be saved. This means
current->non-volatile memory for all saveable parameters. Seems a bit bad
|from an application perspective (don't know who changed them and when), and a
bit tough to do from a code perspective (need to process all saveable
parameters/pages from current."
>Are we interpreting this correctly and should this be made more clear?
>In a related question, under MODE SENSE
>6.11.5 Saved values
>A PC field value of 11b requests that the device server return the saved
values of the mode parameters. Mode
>parameters not supported by the logical unit shall be set to zero. If saved
values are not implemented, the
>command shall be terminated with CHECK CONDITION status, with the sense key
set to ILLEGAL REQUEST, and
>the additional sense code set to SAVING PARAMETERS NOT SUPPORTED.
>The method of saving parameters is vendor specific. The parameters are
preserved in such a manner that they are
>retained when the device is powered down. All saveable mode pages should be
considered saved when a MODE
>SELECT command issued with the SP bit set to one has completed with a GOOD
status or after the successful
>completion of a FORMAT UNIT command.
>How is the above to be interpreted? Is SAVING PARAMETERS NOT SUPPORTED
intended to be returned only if the device does not support any parameters or
is it intended to be returned if the requested page does not support any
saveable parameters? If it is intended to be returned if the requested page
does not support any saveable parameters, then what is the behavior on 3F
(return all pages)?
>Next, the statement "...or after the successful completion of a FORMAT UNIT
command" seems to me to be an SBC specific statement and should have a cross
reference to SBC (and whatever other device type is appropriate).
>Kevin D. Butt
>SCSI & Fibre Channel Architect, Tape Firmware
>Data Protection & Retention
>MS 6TYA, 9000 S. Rita Rd., Tucson, AZ 85744
>Fax: 520-799-2723 (T/L:321)
>Email address: kdbutt at us.ibm.com
John Lohmeyer Email: lohmeyer at t10.org
LSI Corp. Voice: +1-719-533-7560
4420 ArrowsWest Dr. Cell: +1-719-338-1642
Colo Spgs, CO 80907
More information about the T10