Chapter 18. Storage

NVMe driver rebased to version 4.17-rc1

The NVMe driver has been rebased to upstream version 4.17-rc1, which provides a number of bug fixes and enhancements over the previous version. Notable changes are as follows:
  • added error handling improvements for Nonvolatile Memory Express (NVMe) over Remote Direct Memory Access (RDMA)
  • added fixes for keeping connections over the RDMA transport alive
Note that the driver does not support the Data Integrity Field/Data Integrity Extension (DIF/DIX) Protection Information implementation, and does not support multipathing over NVMe-over-Fabrics transport. (BZ#1515584)

NVMe/FC is fully supported on Broadcom Emulex Fibre Channel Adapters

The NVMe over Fibre Channel (NVMe/FC) transport type is now fully supported in Initiator mode when used with Broadcom Emulex Fibre Channel 32Gbit adapters.
NVMe over Fibre Channel is an additional fabric transport type for the Nonvolatile Memory Express (NVMe) protocol, in addition to the Remote Direct Memory Access (RDMA) protocol that was previously introduced in Red Hat Enterprise Linux.
To enable NVMe/FC in the lpfc driver, edit the /etc/modprobe.d/lpfc.conf file and add the following option:
lpfc_enable_fc4_type=3
This feature was introduced as a Technology Preview in Red Hat Enterprise Linux 7.5. Drivers other than lpfc still remain in Technology Preview. See the Technology Previews part for more information.
Additional restrictions:

DM Multipath now enables blacklisting or whitelisting paths by protocol

Device Mapper Multipath (DM Multipath) now supports the protocol configuration option in the blacklist and blacklist_exceptions configuration sections. This enables you to blacklist or whitelist paths based on the protocol they use, such as scsi or nvme. For SCSI devices, you can also specify the transport: for example scsi:fcp or scsi:iscsi. (BZ#1593459)

New %0 wildcard added for the multipathd show paths format command to show path failures

The multipathd show paths format command now supports the %0 wildcard to display path failures. Support for this wildcard makes it easier for users to track which paths have been failing in a multipath device. (BZ#1554516)

New all_tg_pt multipath configuration option

The defaults and devices sections of the multipath.conf configuration file now support the all_tg_pts parameter, which defaults to no. If this option is set to yes, when mpathpersist registers keys it will treat a key registered from one host to one target port as going from one host to all target ports. Some arrays, notably the EMC VNX, treat reservations as between one host and all target ports. Without mpathpersist working the same way, it would give reservation conflicts. (BZ#1541116)

Support for Data Integrity Field/Data Integrity Extension (DIF/DIX)

DIF/DIX is fully supported, provided that the hardware vendor has qualified it and provides full support for the particular HBA and storage array configuration on RHEL. DIF/DIX is not supported on other configurations. It is not supported for use on the boot device, and it is not supported on virtualized guests. Red Hat does not support using ASMLib when DIF/DIX is enabled. DIF/DIX is enabled/disabled at the storage device, which involves various layers up to (and including) the application. The method for activating the DIF on storage devices is device-dependent.
For further information on the DIF/DIX feature, see What is DIF/DIX. (BZ#1649493)