FCP-2: Lost Write Data, Not Last Frame of Sequence, Unacknowledged classes.

Santosh Rao santoshr at cup.hp.com
Thu Jun 27 10:07:09 PDT 2002

* From the T10 Reflector (t10 at t10.org), posted by:
* Santosh Rao <santoshr at cup.hp.com>
Howdy Dave,

Thanks for the clarification. For the case of lost write data (class 3),
where the target has the sequence initiative, Section 9.4.1 conflicts
with Section 12.3.5. 

Section 9.4.1 must be modified to state that the target must not send a
FCP_RSP when an exchange/sequence error is detected and it holds
sequence initiative. This prevents targets from terminating commands
with any possible sk/asc/ascq CHECK CONDITION which cannot be detected
by the initiator, thereby, preventing the use of SLER.

Is this change possible in FCP-2 ?


Dave Peterson wrote:
> The statements refer to the actions to be taken by the initiator.
> But, I don't know how FCP_DATA could be returned for a write operation
> either.
> The note is not correct and should be removed. I think the intent was to
> specify the behavior for out-of-order class 3.
> > Since the last frame of the sequence is assumed to have made it to the
> > target (lost write data iu was not the last frame of sequence), the
> > target has the sequence initiative and can complete the exchange with a
> > FCP_RSP indicating a CHECK CONDITION status with appropriate sk/asc/ascq
> > (as per Section 9.4.1). In this case, is the initiator expected to look
> > for CHECK CONDITION command completions of certain sk/asc/ascq
> > combinations and initiate a SLER operation on seeing those ? What
> > specific sk/asc/ascq combinations should the initiator look for while
> > parsing command completions to initiate SLER ?
> >
> > If this is not done, a write underrun condition as described above
> > cannot be recovered from, since SLER will not kick in and the
> > ULP/application will see the error.

> For this case:
> The target may or may not have sequence initiative
> (i.e., seq=1, seq_cnt=1 may not be the last frame of the sequence).
> For in-order delivery the target should have detected a Sequence error.
> Per clause 12.3.5 Additional error recovery by target:
> For unacknowledged classes of service, the target shall not attempt recovery
> for Sequence errors. The target
> shall depend on initiator time-outs for recovery.
> If SLER is enabled, the target should not return check condition.
> And we could use some words stating this in the doc...dap

The world is so fast that there are days when the person who says 
it can't be done is interrupted by the person who is doing it.
	~ Anon
* 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 mailing list