Releases: pmem/ndctl
Releases · pmem/ndctl
ndctl: release v64
This release incorporates functionality up to the 5.0 kernel, and adds a number of bug fixes and improvements. Highlights include a migration path for the new dax-bus ABI, several cleanups to ndctl-monitor, support for firmware status translation, displaying the supported_alignments attribute, and using it in the namespace creation process, and support for security operations as defined in the Intel DSM specification. Commands: inject-smart: check the firmware status for errors zero-labels: correctly handle firmware errors create-namespace: use supported_alignments when available Add new security commands Tests: security.sh: new test for security commands device-dax: fix intermittent poison handling failures dsm-fail: cleanup leftover debug APIs: ndctl_cmd_submit_xlat ndctl_cmd_xlat_firmware_status ndctl_dax_get_num_alignments ndctl_dax_get_supported_alignment ndctl_dimm_disable_passphrase ndctl_dimm_freeze_security ndctl_dimm_get_security ndctl_dimm_master_secure_erase ndctl_dimm_overwrite ndctl_dimm_secure_erase ndctl_dimm_update_master_passphrase ndctl_dimm_update_passphrase ndctl_dimm_wait_overwrite ndctl_pfn_get_num_alignments ndctl_pfn_get_supported_alignment
ndctl: release v63
This release incorporates functionality up to the 4.20 kernel, and a number of bug fixes and improvements. Highlights include switching the documentation build to asciidoctor by default, fixes to destroy-namespace for reporting the number of namespaces acted upon, using the namespace badblocks listings exported by the kernel, and making them available to non-root users, a new helper for retrieving the dirty-shutdown-count, reverting the udev rule to set the shutdown count latch and cache the dirty-shutdown-count, and fixing the ndctl-monitor daemon to exit successfully in the absence of NVDIMMs. Commands: destroy-namespace: fix number of namespaces reported check-labels: fix the number of labels checked reporting monitor: exit daemon with success when no DIMMs found Tests: Fix a missing include for list_smart_dimm pfn-meta-errors.sh: new test for clearing errors in the volatile 'struct page' metadata area APIs: ndctl_dimm_get_dirty_shutdown ndctl_namespace_get_first_badblock ndctl_namespace_get_next_badblock
ndctl: release v62
This release incorporates functionality up to the 4.19 kernel, and a number of bug fixes and improvements. Highlights include addition of the 'ndctl monitor' command to monitor for SMART health events, use of the new max_available_extent sysfs attribute for namespace creation, verbosity levels for ndctl-list, a udev rule for enabling the LSS latch when supported, a bypass route for making the unsafe shutdown count available for non-privileged users, improvements to ndctl-inject-smart that include an 'uninject' option for all fields, and a new unit test, a number of static analysis fixes, and unit test improvements and fixes. Commands: monitor: new command for monitoring SMART health events list: support -v, -vv, -vvv verbosity levels inject-smart: add --uninject-* and --uninject-all options create-namespace: use max_available_extent for namespace creation list: add new fields to -H for alarm_enabled_* list: always output JSON arrays when --human is absent Tests: dax.sh: dax-poisonCheck for availability of MAP_SYNC dax.sh: fix return code device-dax: relax canned timeouts monitor: new test inject-smart: new test max_available_extent_ns: new test APIs: ndctl_cmd_smart_inject_ctrl_temperature ndctl_dimm_get_event_flags ndctl_dimm_get_flags ndctl_dimm_get_health ndctl_dimm_is_flag_supported ndctl_dimm_smart_inject_supported ndctl_region_get_max_available_extent
ndctl: release v61.2
Fixes: libndctl: fix the uninject API (v1) actually injecting errors
ndctl: release v61.1
Fixes: Add autotools detection for MAP_SYNC
ndctl: release v61
This release incorporates functionality up to the 4.18 kernel, and a number of bug fixes and improvements. Highlights include a fix to the error injection APIs to inject fewer bytes of errors per sector, support for building documentation with asciidoctor in addition to asciidoc, multi-arrgument support for util_<obj>_filter, and a new OPTION_FILENAME in option parsing. Unit test updates include cleanups to unit test scripts refactoring out a lot of common boilerplate, MADV_HWPOISON tests, and a new test for capacity vs label locking. Commands: inject-error: add a --saturate option to inject entire sectors list: display the 'map' location in namespace listings list: add controller temperature, and its threshold/alarm setting Tests: dax-pmd, device-dax: add a test for MADV_HWPOISON sector-mode.sh: fix to work with updated label support in nfit_test common: source common bash functions and variables dsm-fail: test for capacity vs label locking libndctl: update for smart controller temperature various: disable tests that inject poison with dax until 4.19 APIs: ndctl_cmd_ars_cap_get_clear_unit ndctl_cmd_ars_stat_get_flag_overflow ndctl_namespace_inject_error2 ndctl_namespace_uninject_error2
ndctl: release v60.3
Fixes: ndctl: fix libtool versioning
ndctl: release v60.2
Fixes: inject-error: inject only 'clear_err_unit' bytes of error per sector
ndctl: release v60.1
Fixes: documentation: add inject-smart to the Makefile libndctl: fix ABI breakage due to rename of fw_info_get_updated_version
ndctl: release v60
This release incorporates functionality up to the 4.17 kernel, and a number of bug fixes and improvements. Highlights include ack_shutdown_count support, fixes to tests that performed error injections, refactor core topology walking into util_filter_walk(), a new test for partition auto detection for btt/blk namespacees, numa_node support for regions, cleanups to the firmware update command, removal of daxctl io, support for persistence domains for buses and regions, APIs for retrieving and setting the write_cache attribute for namespacees, fixes to ARS APIs, new ARS control commands in ndctl, and an API for the deep_flush attribute for regions. Commands: ndctl list: option to display firmware information ndctl create-namespace: fix minimum alignment detection ndctl list: allow filtereing by numa node ndctl list: fix sector_size sometimes showing as -1 daxctl io: remove as this functionality is provided in PMDK ndctl update-firmware: fix DSM input/output sizes various: replace direct errno prints with strerror strings ndctl read-labels: fix json reference counting various: replace refrences to 'memory' or 'dax' with 'devdax' or 'fsdax' ndctl list: report the bus scrub state ndctl {wait,start}-scrub: new commands for ARS control ndctl list: add a raw_uuid field to namespace listings Tests: ack-shutdown-count-set: new test for the shutdown count APIs various: ensure we use the locally build 'ndctl' various: fix usage of error injection commands for older kernels btt-pad-compat: fix stale json being reused for future commands btt-pad-compat: explicitly request namespace size dpa-alloc: fix for kernels with 4M min namespace size btt-pad-compat: skip for pre-4k capable kernels firmware-update: remove fallocate rescan-partitions: new test for autodetection of partitions core: fix module taint sanity check libndctl: add write_cache testing in check_nameespaces() pmem-errors: fix locking vs new ARS reworks Apis: ndctl_bus_get_persistence_domain ndctl_bus_get_scrub_state ndctl_bus_start_scrub ndctl_cmd_fw_info_get_next_version ndctl_dimm_cmd_new_ack_shutdown_count ndctl_dimm_fw_update_supported ndctl_namespace_disable_write_cache ndctl_namespace_enable_write_cache ndctl_namespace_write_cache_is_enabled ndctl_region_deep_flush ndctl_region_get_numa_node ndctl_region_get_persistence_domain