Subject: [Fwd: FCP-2 : EMDP setting in disconnect-reconnect mode page.]

From: Santosh Rao <[email-masked]>
Date: Thu, 19 Apr 2001 10:23:48 -0700

Julian,

I am forwarding responses from T11 regarding EMDP behaviour in FCP. (And
knowing that Dave Peterson is on this list, perhaps, he can comment
further).

The same level of control that FCP provides must be made available to
iSCSI. (Incidentally, I noticed that SRP had a proposal to have the same
semantics of allowing both WRITE and READ ordering to be controlled
across the entire SCSI command.)

Initiators would find such an option useful which allows them to request
that targets ask for data in-order. i.e. the buffer offset in
consecutive R2Ts be in order. EMDP in iSCSI must allow this level of
control.

- Santosh

Dave Peterson wrote:
> 
> Howdy Santosh,
> 
> EDMP applys to both READs and WRITEs:
> Yes, if EMDP=0, the target shall send continuously increasing DATA_RO values
> in its FCP_XFER_RDY requests.
> Yes, if EMDP=0, the initiator shall send out FCP_DATA IUs in order in
> response to FCP_XFER_RDY.
> 
> If the EMDP bit is set to one the target may request data out of order using
> the FCP_DATA_RO field in the FCP_XFER_RDY.
> 
> The initiator shall (always) deliver FCP_DATA IUs as specified in the
> FCP_XFER_RDY (i.e. the target is in control).
> The exception is when FCP_XFER_RDY is disabled and then it is only
> applicable to the first FCP_DATA IU.
> 
> Dave
> 
> > -----Original Message-----
> > From: [email-masked] [mailto:[email-masked]]On Behalf Of
> > Santosh Rao
> > Sent: Wednesday, April 18, 2001 1:31 PM
> > To: Fibre Channel T11 reflector
> > Subject: FCP-2 : EMDP setting in disconnect-reconnect mode page.
> >
> >
> > All,
> >
> > I've got a question regarding the EMDP bit semantics in the
> > disconnect-reconnect mode page as described in Section 10.1.1.7 of FCP-2
> > (Rev 04).
> >
> > The description of EMDP reads :
> > "....indicates whether or not the target may reorder FCP_DATA IUs for a
> > single SCSI command.
> > EMDP == 0  => target shall generate continuously increasing DATA_RO
> > values for each FCP_DATA sequence for a single SCSI command.
> > EMDP == 1 => target may transfer the FCP_DATA IUs for a single SCSI
> > command in any order."
> >
> > The above description reads fine for READ I/O operations where FCP_DATA
> > IUs flow from target to originator.
> >
> > What is the semantics of EMDP in the context of a WRITE I/O operation ?
> > Does EMDP of 0 imply that target shall send continuously increasing
> > DATA_RO values in its FCP_XFER_RDY requests ?Does it also imply that the
> > initiator shall send out FCP_DATA IUs in order in response to
> > FCP_XFER_RDY ?
> >
> > Or is the EMDP only applicable to READ I/Os and has no effect on WRITEs
> > ? If so, why is this the case.
> >
> > Regards,
> > Santosh Rao