Skip to content

Releases: pmem/ndctl

ndctl: release v71.1

22 Dec 21:55
v71.1
bf01186
Compare
Choose a tag to compare
Fixes:
  ndctl/dimm: Attempt an abort upon firmware-update-busy status
  ndctl/dimm: Fix submit_abort_firmware()

ndctl: release v71

19 Dec 09:48
v71
4486529
Compare
Choose a tag to compare
This release incorporates functionality up to the 5.10 kernel.

Highlights include support for the new device-dax subdivision
functionality added in Linux in v5.10, including ways to create smaller
devdax devices using daxctl/libdaxctl, as well as creating, listing, and
restoring from a config dump, 'mappings' on these devices. Other updates
include several static analysis fixups, reworking the license
identification scheme for different sub-components, and a fix for the
reconfigure-in-place workflow which tries to retain device names.

Commands:
  daxctl-create-device: new command
  daxctl-destroy-device: new command
  daxctl-enable-device: new command
  daxctl-disable-device: new command
  daxctl-reconfigure-device: allow resizing devices
  ndctl-create-namespace: improve reconfigure in-place

Tests:
  daxctl-create.sh: new test for device-dax subdivision

APIs:
  daxctl_dev_get_align
  daxctl_dev_set_align
  daxctl_dev_set_mapping
  daxctl_dev_set_size
  daxctl_mapping_get_end
  daxctl_mapping_get_first
  daxctl_mapping_get_next
  daxctl_mapping_get_offset
  daxctl_mapping_get_size
  daxctl_mapping_get_start
  daxctl_region_create_dev
  daxctl_region_destroy_dev

ndctl: release v70.1

10 Oct 05:27
v70.1
25b3cb0
Compare
Choose a tag to compare
Fixes:
  libnvdimm: fix add_dimm for non-NFIT dimms
  ndctl.spec: fix rpm build for el8

ndctl: release v70

06 Oct 18:30
v70
a33a6d8
Compare
Choose a tag to compare
This release incorporates functionality up to the 5.9 kernel.

Highlights include support for the new firmware activation facility, a
new 'split-acpi' command in 'daxctl'to aid testing and debugging, and
other minor fixes.

Commands:
  update-firmware: add support for firmware activation
  list: updates for firmware activation
  activate-firmware: new command to trigger firmware activation
  daxctl-split-acpi: split ACPI tables for debugging

Tests:
  revoke-devmem: new test to validate iomem protections
  update-firmware: update to test firmware activation

APIs:
  ndctl_bus_activate_firmware
  ndctl_bus_clear_fw_activate_noidle
  ndctl_bus_clear_fw_activate_nosuspend
  ndctl_bus_get_fw_activate_method
  ndctl_bus_get_fw_activate_state
  ndctl_bus_set_fw_activate_noidle
  ndctl_bus_set_fw_activate_nosuspend
  ndctl_dimm_fw_activate_arm
  ndctl_dimm_fw_activate_disarm
  ndctl_dimm_get_fw_activate_result
  ndctl_dimm_get_fw_activate_state

ndctl: release v69

23 Jul 05:53
v69
ea62d6d
Compare
Choose a tag to compare
This release incorporates functionality up to the 5.8 kernel.

Highlights include support for 'PAPR' NVDIMMs, a build fix for
zero-length array warnings in GCC10, a new option for ndctl-monitor
allowing for a timeout for epoll, and misc unit test and documentation
fixes.

Commands:
  monitor: add a new timeout option for polling
  list: skip region filtering if numa_node is absent
  {read,write}-infoblock: set a default alignment based on platform
  list/others: support for PAPR NVDIMMs

Tests:
  align.sh: fix region selection, and label init expectation

APIs:
  ndctl_bus_has_of_node
  ndctl_bus_is_papr_scm
  ndctl_region_has_numa

ndctl: release v68

24 Mar 05:14
v68
c776783
Compare
Choose a tag to compare
This release incorporates functionality up to the 5.6 kernel.

Highlights for this release include new commands to read-infoblock and
write-infoblock, improvements and tests related to alignment
constraints, misc build/compilation related fixes, and misc usability and
documentation fixes.

Commands:
  zero-labels: display an error if regions are active
  destroy-namespace: fix seed namespace accounting
  list: drop named list objects from verbose listing
  *-namespace: emit better errors on failure
  read-infoblock: new command to read an infoblock
  write-infoblock: new command to create and write an infoblock

Tests:
  add bus-id parameter for start-scrub/wait-scrub operation
  udate dax-dev to handle multiple e820 ranges
  exercise sub-section sized namespace creation/deletion
  new test for misaligned namespaces
  labels: test for 'failed to track'

APIs:
  ndctl_namespace_get_target_node
  ndctl_namespace_is_configuration_idle
  ndctl_region_get_align
  ndctl_region_get_target_node
  ndctl_region_set_align

ndctl: release v67

28 Oct 17:43
v67
637bb42
Compare
Choose a tag to compare
This release incorporates functionality up to the 5.4 kernel, and adds a
number of bug fixes, and improvements.

Highlights include small changes for PowerPC compatibility, improvements
to the dax.sh unit test to detect failures in mapping huge pages,
support for the 'security frozen' attribute, user experience
improvements for the daxctl-reconfigure-device command, including an
option to specify movable vs. non-movable state for onlining memory, and
an option to allow create-namespaces to create a maximal configuration
until it exhausts all available region capacity.

Commands:
  create-namespace: add --continue option
  daxctl-reconfigure-device: add --no-movable option
  daxctl-reconfigure-device: display movable state in listings
  daxctl-reconfigure-device: detect races in memory onlining
  security: support for 'security frozen' attribute

Tests:
  dax.sh: add detection for huge page failures
  dax.sh: add XFS reflink dependency
  daxctl-devices.sh: skip on older kernels

APIs:
  ndctl_dimm_security_is_frozen
  daxctl_memory_is_movable
  daxctl_memory_online_no_movable

ndctl: release v66

07 Aug 18:58
v66
cec5975
Compare
Choose a tag to compare
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-{on,off}line-memory: new commands for devices in system-ram mode
  monitor: logging improvements, allow sending to background
  inject-error: refuse to operate on activew BTT namespaces
  *-labels: improvements to minimize data transfer
  create-namespace: usability improvements around region search

Tests:
  security.sh: handle backup keys, mark test as 'destructive'
  device-dax: fix bus-model detection
  daxctl-devices: new test for daxctl-reconfigure-device

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

ndctl: release v65

11 May 00:09
v65
ed17fd1
Compare
Choose a tag to compare
This release incorporates functionality up to the 5.1 kernel, and adds a
number of bug fixes and improvements.

Highlights include a new command to clear errors on a given namespace, a
new travis YAML configuration to enable travis builds for Ubuntu, an
example QEMU script in contrib/ for HMAT emulation, an optional poll
interval for wait-scrub, several fixes related to the security commands,
support for the HYPER-V family of DSM commands, and several fixes to
tests, documentation, and related to building.

Commands:
    clear-errors: new command to clear errors on a namespace
    monitor: remove the requirement of a default config
    sanitize-dimm: allow a zero-key for secure-erase
    sanitize-dimm: preserve keys after an overwrite
    load-keys: fix for non-TPM keys

Tests:
    security: add a new testlet for load-keys
    test-core: add dax_pmem* modules
    misc: fix sys/mman.h vs linux/mman.h includes

APIs:
    ndctl_bus_poll_scrub_completion

ndctl: release v64.1

06 Feb 00:53
v64.1
c1de955
Compare
Choose a tag to compare
Fixes:
    Fix build issues around keyutils inclusion