]> git.baikalelectronics.ru Git - kernel.git/commit
nvme: enforce extended LBA format for fabrics metadata
authorMax Gurtovoy <maxg@mellanox.com>
Tue, 19 May 2020 14:05:53 +0000 (17:05 +0300)
committerChristoph Hellwig <hch@lst.de>
Wed, 27 May 2020 05:12:39 +0000 (07:12 +0200)
commit2d87d89380e36b62157021be9e5e7fb4324bc261
treea81a92d4786a381bc88490f9f7e410b9042544d2
parenta64219b6592190dbbdc17be1b8a62bd602dceb4f
nvme: enforce extended LBA format for fabrics metadata

An extended LBA is a larger LBA that is created when metadata associated
with the LBA is transferred contiguously with the LBA data (AKA
interleaved). The metadata may be either transferred as part of the LBA
(creating an extended LBA) or it may be transferred as a separate
contiguous buffer of data. According to the NVMeoF spec, a fabrics ctrl
supports only an Extended LBA format. Fail revalidation in case we have a
spec violation. Also add a flag that will imply on capable transports and
controllers as part of a preparation for allowing end-to-end protection
information for fabric controllers.

Suggested-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Max Gurtovoy <maxg@mellanox.com>
Signed-off-by: Israel Rukshin <israelr@mellanox.com>
Reviewed-by: James Smart <james.smart@broadcom.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
drivers/nvme/host/core.c