NDCTL User Guide
HomePMDKNDCTLBlog
v66
v66
  • NDCTL User Guide
  • Installing NDCTL
    • Installing NDCTL Packages on Linux
    • Installing NDCTL from Source on Linux
  • Quick Start
  • Concepts
    • NVDIMM Devices
    • PMEM and BLK Modes
    • Regions
      • Regions, Atomic Sectors, and DAX
    • Label Storage Area (LSA)
    • Namespaces
  • Managing NVDIMMs
  • Managing Regions
  • Managing Label Storage Areas (LSA)
  • Managing Namespaces
  • Managing NVDIMM Security
  • NDCTL Man Pages
    • ndctl(1)
    • ndctl−check−labels(1)
    • ndctl−check−namespace(1)
    • ndctl−clear−errors(1)
    • ndctl−create−namespace(1)
    • ndctl−destroy−namespace(1)
    • ndctl−disable−dimm(1)
    • ndctl−disable−namespace(1)
    • ndctl−disable−region(1)
    • ndctl−enable−dimm(1)
    • ndctl-enable−namespace(1)
    • ndctl−enable−region(1)
    • ndctl−freeze−security(1)
    • ndctl−init−labels(1)
    • ndctl−inject−error(1)
    • ndctl−inject−smart(1)
    • ndctl−list(1)
    • ndctl−load−keys(1)
    • ndctl−monitor(1)
    • ndctl−read−labels(1)
    • ndctl−remove−passphrase(1)
    • ndctl−sanitize−dimm(1)
    • ndctl−setup−passphrase(1)
    • ndctl−start−scrub(1)
    • ndctl−update−firmware(1)
    • ndctl-update-passphrase(1)
    • ndctl−wait−overwrite(1)
    • ndctl−wait−scrub(1)
    • ndctl−write−labels(1)
    • ndctl−zero−labels(1)
  • DAXCTL Man Pages
    • daxctl(1)
    • daxctl-list(1)
    • daxctl−migrate−device−model(1)
    • daxctl−offline−memory(1)
    • daxctl−online−memory(1)
    • daxctl−reconfigure−device(1)
  • Troubleshooting
  • Glossary
  • Reference Material
Powered by GitBook
On this page
  • Introduction
  • What's new in v66

Was this helpful?

NDCTL User Guide

NextInstalling NDCTL

Last updated 5 years ago

Was this helpful?

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 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

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:

  • : 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

ACPI v6.0
ACPI
UEFI
uefi.org
daxctl-reconfigure-device
daxctl-online-memory
daxctl-offline-memory
monitor
inject-error
read-labels
write-labels
zero-labels
create-namespace