Addition of REQUEST LENGTH field to SMP frame

Elliott, Robert (Server Storage) Elliott at
Tue Sep 11 16:50:32 PDT 2007

Formatted message: <A HREF="r0709114_f.htm">HTML-formatted message</A>

I think SMP software developers would be happier with a full-fledged
VERSION field, distinguishing between both major (SAS-2, SAS-3, ...) and
minor revisions (SAS-2 revision 10, revision 11, ...).	We could use the
SPC-4 version descriptor values, but that format requires 2 bytes.
SAS-1.1 targets were neither required to check nor prohibited from
checking byte 3 (which was labeled Reserved).  There was no SMP response
specifically defined to report a non-zero value in a reserved field, so
they must resort to the generic SMP FUNCTION FAILED response if they
care.  If the request frame is larger than SAS-1.1, they report INVALID
REQUEST FRAME LENGTH - the unclear case is when the request frame is the
correct SAS-1.1 length, but byte 3 contains a nonzero value.
SAS-2 targets are required to check the value in byte 3, since it is now
a defined REQUEST LENGTH field.  A request length of 00h means the
length is as defined in SAS-1.1; non-zero values mean it's grown longer
(or shorter).  As of sas2r11, if the request frame is shorter than the
target would like, it assumes all the missing fields are set to zero.
The IDENTIFY address frame doesn't seem the best place for this kind of
application layer version information; that frame is generally used for
lower-level information needed to communicate to the target port (you
usually retrieve it from the attached expander, or from initiator
vendor-specific registers if directly attached).  
I'd prefer to put this information into the REPORT GENERAL response
within the SAS-1.1 length of 6 dwords (e.g., in byte 8, or within bytes
20-27).  Software can send REPORT GENERAL with the REQUEST LENGTH field
set to 00h to retrieve those 6 dwords, then start using non-zero REQUEST
LENGTH values if the target reports that it supports SAS-2.
Rob Elliott, elliott at 
Hewlett-Packard Industry Standard Server Storage Advanced Technology 
	From: owner-t10 at [mailto:owner-t10 at] On Behalf Of
George Penokie
	Sent: Tuesday, September 04, 2007 12:54 PM
	To: t10 at
	Cc: laurels at
	Subject: Addition of REQUEST LENGTH field to SMP frame
	Some time ago a REQUEST LENGTH field was added into the SMP
functions. However, there was no way placed into SAS-2 to for an
initiator to determine if an SMP device supports this SAS-2 request
length field (verses the SAS 1.1 with a value of zero in that byte). 
	To resolve this I will be proposing a bit in the IDENTIFY
address frame that will indicate if the SMP device supports a length
field in the SMP function. Any comments? 
	Bye for now,
	George Penokie
	Dept 9A8 030-3 A410
	E-Mail:    gop at
	Internal:  553-5208
	External: 507-253-5208yes 

More information about the T10 mailing list