NDCTL User Guide
Last updated
Was this helpful?
Last updated
Was this helpful?
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 NFIT (NVDIMM Firmware Interface Table). The latest and specifications can be found at . Operations supported by ndctl
include:
Provisioning capacity (namespaces)
Enumerating Devices
Enabling and Disabling NVDIMMs, Regions, and Namespaces
Managing NVDIMM Labels
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:
: new command for device mode management
, : new commands for devices in system-ram mode
: logging improvements, allow sending to background
: refuse to operate on active BTT namespaces
, , : improvements to minimize data transfer
: 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