[PATCH] nvme: add DIX support for nvme-rdma

Chao Leng lengchao at huawei.com
Mon Sep 5 19:13:42 PDT 2022



On 2022/9/5 14:37, Christoph Hellwig wrote:
> On Tue, Aug 30, 2022 at 08:21:29PM +0800, Chao Leng wrote:
>> Checksum just be used between host_buff -> host HBA, and the time
>> is very short. If hardware support this, it is useful for reducing
>> CPU utilization and data security can be acceptable like SCSI.
> 
> No, that is not how _end to and_ data protection works.
Yes, end to end dif define:
host_buf-----crc------>host HBA-----crc----->target.
but to reduce CPU utilization, DIX define:
host_buf--checksum---->host HBA-----crc----->target.
SCSI related code is implemented according to the above definition.
> 
> And as said before, the IP checksums are not actually specified in NVMe
> to start with.

Although the NVMe protocol does not define in detail how DIX should
be supported. But The NVMe base spec says:
Additionally, support has been added for many Enterprise capabilities like
end-to-end data protection (compatible with SCSI Protection Information,
commonly known as T10 DIF, and SNIA DIX standards), enhanced error reporting,
and virtualization.
> 
> .
> 



More information about the Linux-nvme mailing list