]> www.infradead.org Git - users/hch/scsi-layout-nvme.git/commitdiff
rewrite the "Volume Identification" ѕection
authorChristoph Hellwig <hch@lst.de>
Tue, 7 Jun 2022 08:05:47 +0000 (10:05 +0200)
committerChristoph Hellwig <hch@lst.de>
Tue, 7 Jun 2022 08:11:12 +0000 (10:11 +0200)
Pull in the few bits of information that we actually need instead of
relying on the STLR whitepaper.

Signed-off-by: Christoph Hellwig <hch@lst.de>
scsi_nvme_middle.xml

index cd9b5bc14768b73a8a9de4b4acaa6156cb34ce61..a4f078fcd36ddc0a6fda4b9c62831910a3456e7a 100644 (file)
     <t>
       The pNFS SCSI layout uses the Device Identification VPD page (page code
       0x83) from <xref target="SPC4" /> to identify the devices used by
-      a layout.  Section 6.1.4 of <xref target="NVME-STLR" /> lists ways
-      to build SCSI Device Identification descriptors from NVMe Identify
-      data.
+      a layout. Implementation using NVMe device shall use a mapping from
+      NVMe identifier to the SPC Device Identification VPD page that is
+      compatible to that defined in Section 6.1.4 of
+      <xref target="NVME-STLR" />.
+    </t>
 
+    <t>
       To be used as storage devices for the pNFS SCSI layout, NVMe devices
       MUST support either the EUI64 or NGUID value in the
       Identify Namespace data, as the methods based on the Serial Number for
       legacy devices might not be suitable for unique addressing needs and
-      thus MUST NOT be used.  If possible NVMe devices uses as storage
-      devices for the pNFS SCSI layout SHOULD support the NGUID value as
-      it is the larger identifier.
+      thus MUST NOT be used.  If available, the NGUID value SHOULD be used
+      as the larger identifier.
+      <!-- XXX also allow the Identifier descriptors -->
+    </t>
+
+    <t>
+      The pnfs_scsi_base_volume_info4 structure shall be constructed as
+      following:
+      <list style='numbers'>
+      <t>The "sbv_code_set" field SHALL be set to PS_CODE_SET_BINARY.</t>
+      <t>The "pnfs_scsi_designator_type" field SHALL be set to
+         PS_DESIGNATOR_EUI64.</t>
+      <t>The "sbv_designator" field shall contain either the NGUID or EUI64
+         fields from the Identify Namespace data.</t>
+      <!-- XXX: add a reference to the persistent reservation section for
+           sbv_pr_key -->
+      </list>
     </t>
   </section>