From: "Rich Deglin" <richd@serverengines.com> To: "'Elliott, Robert \(Server Storage\)'" <Elliott@hp.com>, <t10@t10.org> Subject: RE: SMP frame - issue with maximum number of valid data bytes Date: Mon, 28 Jan 2008 13:30:42 -0800 X-Message-Number: 8487 Formatted message: HTML-formatted message Ah yes, Rob, but which tables are the correct ones, those in section 9 or those in section 10? Or are you suggesting that both sets of tables be reworked? Thanks. _____ From: owner-t10@t10.org [mailto:owner-t10@t10.org] On Behalf Of Elliott, Robert (Server Storage) Sent: Sunday, January 27, 2008 6:48 PM To: t10@t10.org Subject: RE: SMP frame - issue with maximum number of valid data bytes We don't really use "fill bytes" in SMP, since the request and response frames are always defined as containing structures that are multiples of 4 bytes. The only one that does not do so is the ZONED BROADCAST request, but it already defines a "PAD" field on its own to round up to a multiple of 4 bytes. Removing the "fill bytes" concept would be a good letter ballot comment on sas2r14. -- Rob Elliott, elliott@hp.com Hewlett-Packard Industry Standard Server Storage Advanced Technology _____ From: owner-t10@t10.org [mailto:owner-t10@t10.org] On Behalf Of Rich Deglin Sent: Thursday, January 24, 2008 7:32 PM To: t10@t10.org Subject: SMP frame - issue with maximum number of valid data bytes SAS 2 (r13) section 9.4.3, I think, clearly shows that a maximum length SMP RESPONSE frame consists of the following: 1 byte FRAME TYPE 1024 bytes RESPONSE BYTES 3 fill bytes 4 bytes CRC In my reading of this section, this means that an SMP RESPONSE frame with a maximum length RESPONSE BYTES field has NO MORE THAN 1025 valid data bytes plus 3 fill bytes plus 4 CRC bytes = 1032 total bytes. The "header" mentioned in section 10.4.3.2 is not shown here. Section 10.4.3.2 conflicts with this. It states that a maximum length SMP RESPONSE frame consists of the following: 1 byte FRAME TYPE 1 byte FUNCTION 1 byte FUNCTION RESULT 1 byte RESPONSE LENGTH 1024 bytes RESPONSE BYTES 0 fill bytes 4 bytes CRC In my reading of this section, this means that an SMP RESPONSE frame with a maximum length RESPONSE BYTES field has EXACTLY 1028 valid data bytes plus 0 fill bytes plus 4 CRC bytes = 1032 total bytes. A 4 byte "header" is mentioned in the text of this section but is not explicitly defined, which I would contend is an oversight in the document. The SMP REQUEST frame descriptions demonstrate the same issue. Please explain the apparent conflict. If there is a real problem here in the spec, is a proposal necessary to correct it? Also note that the same issues exist in the SAS 1.1 spec, but I am guessing that no problems occurred in practice, due to the fact that the lengths of the SAS 1.1 defined SMP REQUESTs and RESPONSEs do not get anywhere near the limits. _____________________________________________________________________________ ______ This message, together with any attachment(s), contains confidential and proprietary information of ServerEngines LLC and is intended only for the designated recipient(s) named above. Any unauthorized review, printing, retention, copying, disclosure or distribution is strictly prohibited. If you are not the intended recipient of this message, please immediately advise the sender by reply email message and delete all copies of this message and any attachment(s). Thank you.