NDCTL User Guide
Introduction
ndctl
is a utility for managing the Linux LIBNVDIMM Kernel subsystem. It is designed to work with various non-volatile memory devices (NVDIMMs) from different vendors. The LIBNVDIMM subsystem defines a kernel device model and control message interface for platform NVDIMM resources like those defined by the ACPI v6.0 NFIT (NVDIMM Firmware Interface Table). The latest ACPI and UEFI specifications can be found at uefi.org. Operations supported by ndctl
include:
Provisioning capacity (namespaces)
Enumerating Devices
Enabling and Disabling NVDIMMs, Regions, and Namespaces
Managing NVDIMM Labels
What's new in v66
This release incorporates functionality up to the 5.3 kernel, and adds a number of bug fixes, and improvements.
Highlights include a new command to reconfigure dax devices to different modes (devdax - default, and system-ram - to hotplug the dax device as system memory), improvements to ndctl-{read,write,init}-labels allowing smaller sized reads/writes, usability fixes to ndctl-monitor, and ndctl-create-namespace, and a fix to ndctl-check-namespace allowing it to be used on systems with different page sizes.
Commands:
daxctl-reconfigure-device: new command for device mode management
daxctl-online-memory, daxctl-offline-memory: new commands for devices in system-ram mode
monitor: logging improvements, allow sending to background
inject-error: refuse to operate on active BTT namespaces
read-labels, write-labels, zero-labels: improvements to minimize data transfer
create-namespace: usability improvements around region search
APIs:
ndctl_cmd_cfg_read_set_extent
ndctl_cmd_cfg_write_set_extent
ndctl_dimm_read_label_extent
ndctl_dimm_read_label_index
ndctl_dimm_zero_label_extent
daxctl_dev_disable
daxctl_dev_enable_devdax
daxctl_dev_enable_ram
daxctl_dev_get_ctx
daxctl_dev_get_memory
daxctl_dev_get_resource
daxctl_dev_get_target_node
daxctl_dev_is_enabled
daxctl_memory_get_block_size
daxctl_memory_get_dev
daxctl_memory_get_node_path
daxctl_memory_is_online
daxctl_memory_num_sections
daxctl_memory_offline
daxctl_memory_online
Last updated