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
).
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 createio_uring
instances as usual. -
1
: Creatingio_uring
is disabled for unprivileged processes. With this setting, theio_uring_setup
fails with the-EPERM
error. It only successfully completes if the calling process is privileged by theCAP_SYS_ADMIN
capability. However, existingio_uring
instances can still be used. -
2
(default): Creatingio_uring
creation is disabled for all processes. With this setting, theio_uring_setup
always fails with-EPERM
. However, existingio_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.