Kevin D Butt kdbutt at
Fri Jan 28 09:48:03 PST 2011

Formatted message: <a href="">HTML-formatted message</a>

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
Tel: 520-799-5280
Fax: 520-799-2723 (T/L:321)
Email address: kdbutt at

More information about the T10 mailing list