File Systems and Storage

The following features that are related to file systems and storage are available as technology preview.

DAX File System Available

In this release, the DAX file system is available as a Technology Preview for the ext4 and XFS file systems. DAX enables an application to directly map persistent memory into its address space. The system must have some form of persistent memory available to use DAX. Persistent memory can be in the form of one or more Non-Volatile Dual In-line Memory Modules (NVDIMMs). In addition, a file system that supports DAX must be created on the NVDIMMs; the file system must be mounted with the dax mount option. Then, an mmap of a file on the DAX mounted file system results in a direct mapping of storage into the application's address space.

NVMe-oF Discovery Service

The NVMe-oF Discovery Service features are defined in the NVMexpress.org Technical Proposals (TP) 8013 and 8014. To preview these features, install the nvme-cli 2.0 package and attach the host to an NVMe-oF target device that implements TP-8013 or TP-8014. For more information about TP-8013 and TP-8014, see the NVM Express 2.0 Ratified TPs from the https://nvmexpress.org/developers/nvme-specification/ website.

Note that NVMe-oF is supported in UEK.

nvme-stas Package

The nvme-stas package, which is a Central Discovery Controller (CDC) client for Linux, handles the following functionalities:

  • Asynchronous Event Notifications (AEN)

  • Automated NVMe subsystem connection controls

  • Error handling and reporting

  • Automatic (zeroconf) and Manual configuration.

This package consists of two daemons, Storage Appliance Finder (stafd) and Storage Appliance Connector (stacd).

NVMe 8006 in-Band Authentication

Non-Volatile Memory Express (NVMe) TP 8006, which is an in-band authentication for NVMe over Fabrics (NVMe-oF), is available as for technology preview. The NVMe Technical Proposal 8006 defines the DH-HMAC-CHAP in-band authentication protocol for NVMe-oF. For more information, see the dhchap-secret and dhchap-ctrl-secret option descriptions in the nvme-connect(1) manual page.

in-Band Authentication is fully available in UEK R7U2.

io_uring Asynchronous I/O Interface

Although available, the io_uring asynchronous I/O interface is disabled by default. To enable the feature, set the kernel.io_uring_disabled variable to any one of the following values when running the sysctl command:

  • 0: All processes can create io_uring instances as usual.

  • 1: Creating io_uring is disabled for unprivileged processes. With this setting, the io_uring_setup fails with the -EPERM error. It only successfully completes if the calling process is privileged by the CAP_SYS_ADMIN capability. However, existing io_uring instances can still be used.
  • 2 (default): Creating io_uring creation is disabled for all processes. With this setting, the io_uring_setup always fails with -EPERM. However, existing io_uring instances can still be used.

To use this feature, an updated version of the SELinux policy to enable the mmap system call on anonymous inodes is also required.

Note that io_uring support has been available in UEK from UEK R6U3.