RE: iSCSI Expected Data Transfer Length for T10-PI

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Sagi,

> RFC-7143 states:
> "the Expected Data Transfer Length field contains the number of bytes of
> data involved in this SCSI operation."
> Since this field relates to *data bytes* I kept T10-PI implicit wrt this
> field. The iSCSI target calculates the
> total transfer length (data + protection) from the cdb transfer length
> field and protect bits.

That is wrong.  At the SCSI transport interface (both iSCSI and FCP are
SCSI transports), the concept of "data bytes" includes SCSI protection
information.

> In FC, the fc_dl field was updated to relate to the total number of
> transfer bytes and includes
> data and protection bytes. virtio_scsi was added with a header PI
> section (virtio_scsi_cmd_req_pi).

That is the correct approach.

At the SCSI transport interface (both FCP and iSCSI are SCSI transports),
no distinction is made between user data and protection information.
therefore, a transfer of 512 bytes of user data + 8 bytes of protection
information is a 520 byte transfer for both protocols.

The authority for this is SAM-5, or SAM-4 if one wants to refer to an
approved standard.  Neither are open to interpretation on this point.

All SCSI transports are supposed to behave the same way.  I hope this
can be corrected quickly.

Thanks,
--David


> -----Original Message-----
> From: Sagi Grimberg [mailto:sagig@xxxxxxxxxxxxxxxxxx]
> Sent: Sunday, May 25, 2014 11:31 AM
> To: martin.petersen@xxxxxxxxxx; Mike Christie; Nicholas A. Bellinger
> Cc: linux-scsi; target-devel; Oren Duer; james.smart@xxxxxxxxxx; Or Gerlitz;
> cbm@xxxxxxxxxxxxxxx; julians@xxxxxxxxxxxxx; meth@xxxxxxxxxx; Black, David
> Subject: iSCSI Expected Data Transfer Length for T10-PI
> 
> Hey All,
> 
> Recently, iSER end-to-end T10-PI support maid it mainline.
> I am wandering about the impact T10-PI should or shouldn't have on iSCSI
> header
> field "Expected Data Transfer Length".
> 
> RFC-7143 states:
> "the Expected Data Transfer Length field contains the number of bytes of
> data involved in this SCSI operation."
> Since this field relates to *data bytes* I kept T10-PI implicit wrt this
> field. The iSCSI target calculates the
> total transfer length (data + protection) from the cdb transfer length
> field and protect bits.
> 
> In FC, the fc_dl field was updated to relate to the total number of
> transfer bytes and includes
> data and protection bytes. virtio_scsi was added with a header PI
> section (virtio_scsi_cmd_req_pi).
> 
> So my question is, should this field be updated to explicitly include
> T10-PI bytes like the FC equivalent fc_dl?
> Or should T10-PI bytes be implicit?
> 
> I want to pin down this one to avoid a situation where the standard is
> open for interpretations.
> 
> Thanks,
> Sagi.

--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]
  Powered by Linux