definition of sbp2 Passed in dispute?
PJohansson at acm.org
Thu Aug 2 09:44:49 PDT 2001
* From the T10 Reflector (t10 at t10.org), posted by:
* Peter Johansson <PJohansson at ACM.org>
At 09:04 AM 8/2/2001, Pat LaVarre wrote:
>Anybody know what Passed means in sbp2?
There are no occurrences of the word "passed" in SBP-2, so I think it's
impossible to say what "passed" means in SBP-2.
To judge from the rest of your message, Pat, you seem to be mixing ORB
completion with CDB completion in ways that may be entirely idiosyncratic
to you implementation----and the inviting others to agree with your
definition. It doesn't seem likely to me ...
Maybe a closer look at the bits and fields you're considering would be helpful:
>(src == 0) || (src == 1)
The src field has nothing to do with successful completion of either the
ORB or the CDB it carries. The src field provides feedback to the initiator
about the state of the logical unit's fetch agent. When source is zero, the
fetch agent is not idle and the doorbell is the only safe way to append to
the ORB list. When src is one, the fetch agent is idle and a new ORB may be
directly written to ORB_POINTER---or the doorbell may be used.
Of course, FAST_START in SBP-3 is rewriting some of these rules, but you
might wait to consult it until after you have digested SBP-2.
>(resp == 0)
A resp value of REQUEST COMPLETE means ONLY that the logical unit received
the ORB and its CDB OK, that the ORB was well-formed and that no Serial Bus
errors were encountered in the transfer of data or status. It indicates
absolutely nothing about the successful completion of the command. Command
completion status is the province of the command set standard. For SCSI
command sets, SBP-2 provides guidance in Annex B.
>(d == 0)
Whether or not the fetch agent is dead is orthogonal to the successful
completion of both the ORB and its command. Status for an ORB and status
for its CDB could both be OK---and be posted to the application, e.g., SCSI
disk driver---even if the fetch agent has died.
>(len >= 1 Two QuadletsOfStatus)
If len is less than one, the entire status block should be ignored and no
conclusions drawn. This is an implementation error in a device and not
likely to be recoverable.
>(sbp_status == 0)
Don't forget that an sbp_status value of 11 also indicates successful
completion---but of a dummy ORB.
Congruent Software, Inc.
98 Colorado Avenue
Berkeley, CA 94707
(510) 527-3856 FAX
PJohansson at ACM.org
* 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