On 11/2/2013 12:06 AM, Bart Van Assche wrote:
On 31/10/2013 5:24, Sagi Grimberg wrote:
While T10-DIF clearly defines that over the wire protection guards are
interleaved into the data stream (each 512-Byte block followed by 8-byte
guard), when in memory, the protection guards may reside in a buffer
separated from the data. Depending on the application, it is usually
easier to handle the data when it is contiguous. In this case the data
buffer will be of size 512xN and the protection buffer will be of size
8xN (where N is the number of blocks in the transaction).

It might be worth mentioning here that in the Linux block layer the approach has been chosen where actual data an protection information are in separate buffers. See also the bi_integrity field in struct bio.

Bart.


Hey Bart, I was expecting your input on this
Thanks for the insightful comments!

The explanation here is an attempt to Introduce T10-DIF to the mailing-list as simple as possible, so I tried not to dive into SBC-3/SPC-4. You are correct, the 8-byte protection guards will follow the protection interval which won't necessarily be 512 (only for DIF types 2,3).

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

Reply via email to