Releases: pmem/ndctl
Releases · pmem/ndctl
ndctl: release v57.1
This minor releases addresses stability issues, static analysis reports, and other minor fixups. Commands: ndctl list: fix false positive badblocks reports
ndctl: release v57
This release incorporates the capabilities of the 4.12 kernel. Major highlights include the new 'ndctl check-namespace' utility to check and repair btt instances, new option to 'ndctl list' to enumerate device relative error offsets, and support for the "JEDEC Byte-Addressable Energy-Backed Interface NVDIMM" SMART health format. Commands: ndctl check-namespace: check and repair a btt instance ndctl list: new '--media-errors' option ndctl list: add acpi 6.1 dimm health state flags ndctl write-labels: new command to deploy data to dimm label areas Tests: blk-exhaust: validate aliased pmem vs blk capacity accounting daxdev-errors: error injection and clearing for device-dax device-dax-fio: i/o traffic sanity check for device-dax label-compat: regression test for interleave-set-cookie compatibility Apis: ndctl_dimm_has_notifications: acpi 6.1 health-state notification flag ndctl_dimm_failed_map: acpi 6.1 map failure flag ndctl_region_get_resource: region resource base address ndctl_region_get_{first,next}_badblock: media error enumeration ndctl_namespace_disable_safe: check for busy block device before disable ndctl_namespace_is_active: check if namespace is enabled or claimed
ndctl: release v56
This release incorporates the capabilities of the 4.10 kernel. Major highlights include the new 'daxctl' utility and its 'list' command, as well as several usability tweaks and cleanups to 'ndctl create-namespace' and 'ndctl list'. Commands: ndctl list: add support for filtering by namespace mode daxctl list: generically list device-dax instances in a platform ndctl create-namespace: reconcile namespace size against interleave-width Tests: test: sanity check the unit test kernel modules befor running tests device-dax: extend it to test 4K and 1G alignments in addition to 2M multi-pmem: check namespace deletion cleanup Apis: ndctl_{pfn,dax}_has_align: detect kernels that lack the align attribute ndctl_{set,get}_private_data: attach private data to a library context daxctl_region_get_size: retrieve the total dax region size daxctl_region_get_align: retrieve the physical alignment of the region daxctl_region_get_{first,next}: enable listing of device-dax regions
ndctl: release v55
This release incorporates the capabilities of the 4.9 kernel. Major highlights include support for retrieving the health status of HPE NVDIMMs, and new label manipulation / validation commands. Commands: list: add HPE NVDIMM health reporting init-labels: initialize a namespace-label index-block check-labels: validate a namespace-label index-block create-namespace: fix crash when target region disabled bash-completion: add {en,dis}able-dimm and {check,init}-labels support Tests: dsm-fail: check that namespaces stay disabled when label DSMs fail multi-pmem: validate pmem-region sub-division support libndctl: add btt-size check libndctl: test health event notification support device-dax: validate "invalidate on shutdown" behavior of dax devices device-dax: validate direct-i/o to device-dax mappings device-dax: check kernel fix for file offset to phys offset translation device-dax: check kernel fix for crash when reading /proc/<pid>/smaps clear: check kernel fix for making cleared badblocks stay cleared Apis: daxctl_region_get_available_size: new, in support of dax sub-division daxctl_region_get_devname: new, in support of dax sub-division daxctl_region_get_dev_seed: new, in support of dax sub-division ndctl_dimm_get_health_eventfd: new, fires upon firmware health event notification ndctl_cmd_cfg_read_get_size: new, simplifies label manipulation routines ndctl_dimm_get_available_labels: fix error return value to be ULONG_MAX ndctl_region_get_available_size: fix error return value to be ULLONG_MAX ndctl_dimm_cmd_new_cfg_{read,write}: fix to not overflow label area size
ndctl: release v54
This release incorporates the capabilities of the 4.8 kernel. Updates to the unit tests make up the bulk of this release to account for kernel commit 1ee6667cd8d1 "libnvdimm, pfn, dax: fix initialization vs autodetect for mode + alignment". Commands: list: add device-dax information list: add btt size information create-namespace: fix handling of invalid sector sizes create-namespace: static analysis fixes bash-completion: namespace completion enhancements Tests: libndctl: updates for pfn and dax autodetect changes libndctl: new gates for running against older kernels device-dax: new pcommit: remove, the pcommit instruction has been deprecated Apis: ndctl_dimm_get_manufacturing_date: new ndctl_dimm_get_manufacturing_location: new ndctl_btt_get_size: new ndctl_cmd_unref: fix, accepts NULL input
ndctl: release v53.1
Fix up source url vs tag format confusion.
ndctl: release v52
This release incorporates the capabilities of the 4.6 kernel (most
prominently 'clear poison' support), and adds the below features and
fixes:
New apis:
ndctl_invalidate
ndctl_cmd_ars_cap_get_range
ndctl_bus_cmd_new_clear_error
ndctl_cmd_clear_error_get_cleared
ndctl_namespace_get_resource
ndctl_pfn_get_size
ndctl_pfn_get_resource
Api fixes:
ndctl_bus_cmd_new_ars_status - output buffer sizing fix
ndctl_bus_cmd_new_ars_status - input validation
ndctl_cmd_ars_in_progress - invalidate state after checking
ndctl: release v51
This release reworks spec file generation to use the automated tarballs generated by github for each annotated tag. It also includes a couple minor fixes.
ndctl: release v50
This release incorporates the capabilities of the 4.5 kernel, and adds the below features and fixes: New apis: ndctl_bus_get_ctx ndctl_namespace_get_pfn ndctl_namespace_get_mode ndctl_namespace_get_numa_node ndctl_region_get_pfn_seed ndctl_pfn_get_first ndctl_pfn_get_next ndctl_pfn_get_id ndctl_pfn_get_namespace ndctl_pfn_get_uuid ndctl_pfn_set_uuid ndctl_pfn_get_location ndctl_pfn_set_location ndctl_pfn_get_align ndctl_pfn_set_align ndctl_pfn_set_namespace ndctl_pfn_get_bus ndctl_pfn_get_ctx ndctl_pfn_get_devname ndctl_pfn_get_block_device ndctl_pfn_is_valid ndctl_pfn_is_enabled ndctl_pfn_get_region ndctl_pfn_enable ndctl_pfn_delete ndctl_pfn_is_configured New utility commands: list help (man pages) create-namespace Api fixes: ndctl_{namespace|btt}_foreach crash fix ndctl_namespace_delete no longer errors on "io" namespaces miscellaneous static analysis fixes Utility command fixes: {en|dis}able-{namespace|region} return code
ndctl v47
ndctl: release v47 This release reflects the ABI of the first kernel with libnvdimm support, v4.2. New apis: ndctl_bus_cmd_new_ars_cap ndctl_bus_cmd_new_ars_start ndctl_bus_cmd_new_ars_status ndctl_cmd_ars_cap_get_size ndctl_cmd_ars_in_progress ndctl_cmd_ars_num_records ndctl_cmd_ars_get_record_addr ndctl_cmd_ars_get_record_len ndctl_namespace_disable_invalidate Fixes: ndctl_btt_enable now triggers a re-scan for new btt seeds