Skip to content

v2.12

Compare
Choose a tag to compare
@github-actions github-actions released this 17 Mar 09:40
· 50 commits to master since this release

The bulk of changes are adding the missing commands from the nvme v2.1 spec. Another large change was update the plugins so the also are available when the json-c library is missing. Both changes were driven by Tokunori Ikegami. Thanks a lot!

Also there are many other contributions to fix or extend the tool. Thanks to all your contributions!

Arbaz Khan (1):
      type: Using enums of ANSAN and RGCNS bit for OAES

Ben Reese (1):
      Plugin: ScaleFlux Adding Status Command

Brandon Paupore (1):
      wdc: rework log retrieval and parsing

Bryan Gurney (1):
      nvme: set eds to true if controller supports 128 bit hostid

Chris Leech (1):
      nvmf-keys: udev rule should be using /etc/nvme

Daniel Néri (2):
      nvme-print: add fallback for non-standard locale category
      plugins/netapp: add include of libgen.h for basename(3) prototype

Daniel Wagner (26):
      docs: add howto to setup TLS connections
      build: bump libnvme wrap
      doc: remove TLS documentation
      build: bump wrap
      build: automatically add a thank you note on PR merge
      build: fix REST API call and permissions for thanks you note
      build: remove thank you bot
      tests: monitor /dev for new nvme block device
      plugins/ocp: fix telemetry parser buffer overflow
      build: checkpatch ignore new/del/mov files
      build: sync checkpatch config file
      build: checkpatch limit line length to 100 chars
      nvme: do not output debug infos on info level
      Revert "nvme: add flush command chardev handle error message"
      Revert "nvme: use blkdev for direct if namespace-id specified"
      Revert "argconfig: add argconfig_get_value()"
      build: bump libnvme wrap
      util/types: fix print format string
      plugins/virtium: fix print format string
      plugins/sed: use platform depended cast for pointer type
      util/logging: fix print format string
      nvme: enforce ns granularity on ns create
      nvme: use correct parser type for nvmsetid and endgid option
      build: bump libnvme wrap
      doc: Regenerate all docs for v2.12
      Release v2.12

Dennis Maisenbacher (13):
      build: Add token for coverage test
      tests: Introduce configurable nvme binary path
      tests: Use json output for parsing
      tests: use current LBA format as I/O block size
      tests: Remove unneeded sleep statements
      tests: Refactor prints
      tests: Fix `subprosess.call` calls
      tests: Use container image to run nightly tests
      CI: add missing bind-mount option for /dev
      tests: fix LBA format calculation
      tests: read LBA size for validation
      tests: fix hex to base-10 conversion in id-ctrl output
      tests: check if verify command is supported

Francis Pravin (15):
      nvme-print: use NVME_GET in sanitize log
      nvme-print: print the new fields added in Sanitize log - TP4152
      build: bump libnvme wrap
      nvme-print-stdout: print MAXWZD and NSZS bits of ONCS field
      nvme: add Namespace Zeroes support to Write Zeroes command
      doc: Add write zeroes command namespace-zeroes option
      nvme: add the new Self-test Code of Device Self-test command
      nvme-print-stdout: add human readable output for DSTO field
      build: bump libnvme wrap
      nvme-print: print new id-ns fields added in NVM Command Set Spec 1.1
      nvme-print: print new fields of nvm_id_ctrl
      nvme-print: print Host Behavior Support feature fields
      build: bump libnvme wrap
      nvme-print: add human readable output for IOCS Data Structure
      nvme-print: print new fields of Asynchronous Event Configuration

Greg Joyce (3):
      sed: add '--read-only' to lock/unlock commands
      sed: extended discovery feature code printing
      sed: improved contextual error messages

Hannes Reinecke (2):
      sed: add '--read-only' to 'sed initialize'
      fabrics: make 'disconnect' accepting only -n or -d

Jayden Stenfort (3):
      Plugin: ScaleFlux Seperating Types
      Plugin: ScaleFlux Spelling&Typo Fixes
      Plugin: ScaleFlux Use NVME_NSID_ALL

Karthik Balan [email protected] (1):
      plugins/ocp: fixed crash in telemetry string log output format json

Leonardo da Cunha (4):
      plugins/fdp: Added FDP feature subcommand.
      doc: Add nvme-fdp-feature command
      completions: Added fdp feature auto-completion.
      Documentation: Added solidigm plugin commands to main manual page.

Martin Belanger (1):
      Makefile: Add new targets and update meson command syntax

Martin George (22):
      netapp-ontapdev: add verbose output
      netapp-ontapdev-doc: add verbose details
      nvme: update messages for few misc functions
      fabrics: update return values for dim
      netapp-ontapdev: fix fw version handling
      netapp-ontapdev: fix JSON output for nsze & nuse
      nvme-netapp: update err messages
      netapp-smdev: remove redundant code
      netapp-smdev-doc: add verbose details
      netapp-smdev: add verbose output
      udev-rules-ontap: switch to queue-depth iopolicy
      nvme-print-stdout: add descriptions for nsze, ncap & nuse
      nvme-print-stdout: add details in list-ns verbose output
      nvme: make -v output consistent with -H output for nvme get-property
      nvme: make -v output consistent with -H output for nvme get-feature
      nvme: make get-feature JSON output print everything
      nvme: check for valid output format
      netapp-ontapdev: update basestr headers in verbose output
      netapp-smdev: update basestr header in verbose output
      netapp-ontapdev: update err msg for no ontapdevices
      netapp-smdev: update err msg for no smdevices
      netapp-ontapdev: correct the basestr header

Maurizio Lombardi (1):
      ns_descs: prevent buffer overrun and memory corruption

Minsik Jeon (3):
      plugins/ocp: Align ocp_smart_extended_log struct.
      ocp-nvme: Update ocp v2.6 Smart Information Extended
      ocp-nvme: Add missing data media_dies_offline to smart_extended_log.

Nate Thornton (3):
      build: bump libnvme wrap
      print: OACS Host Managed Live Migration Support (HMLMS)
      plugin/lm: Introduce Live Migration plugin

Nitesh Shetty (1):
      nvme: plugins/fdp, check endurance group identifier

Paul Wood (1):
      ocp-telemetry-decode: fix ascii string lookup

Sagi Grimberg (1):
      make: fix make rpm target

Stephen Bates (1):
      ocp-nvme: Add a different formatting for JSON output

Steven Seungcheol Lee (15):
      ocp-nvme: Recommit removed patch
      ocp-nvme: Update ocp v2.6 Hardware Component
      ocp-nvme: Add Error Injection type from ocp2.6
      nvme-print: Add id-ctrl CTRATT.RHII, using enum
      build: bump libnvme wrap
      print: Supported Log lidsp print updated NVMe v2.1
      nvme: telemetry ctrl-init need to clear RAE
      build: bump libnvme wrap
      nvme: Host-init telemetry log mcda field added
      ocp: TCG Configuration Log field added ocp v2.6
      build: bump libnvme wrap
      print: Add missing fid to string
      print: id-ctrl print updated based on NVMe v2.1
      plugins/ocp: Use structure for ocp smart log
      nvme: add error message for mmap_registers

Swapnil Dinkar (1):
      plugins/amzn: add stats support

Tokunori Ikegami (121):
      opc: fix hardware component descriptions bytes number
      ocp: set UUID index to get hwcomp log
      build: change muon setup command and parameter
      nvme-print-stdout: add nvm-id-ctrl command VER and LBAMQF fields
      ocp: set UUID index to get extended smart log
      ocp: delete internal-log command telemetry type none value definition
      ocp: update internal-log command telemetry type description
      plugins: build plugins not depended on json without json
      nvme-wrap: add nvme_cli_set_features() API function
      ocp: add ocp-types.h file for OCP requirements definitions
      ocp: add set-enable-ieee1667-silo command
      nvme: disable output-format option json value without json-c
      amzn: enable amzn-nvme.c build without json-c dependencies checking
      amzn: use PRIu64 printf format string instead of llu
      dapustor: enable dapustor-nvme.c build without json-c dependencies checkin
      dell: build plugin not depended on json without json
      fdp: build plugin not depended on json without json
      huawei: enable huawei-nvme.c build without json-c dependencies checking
      intel: enable intel-nvme.c build without json-c dependencies checking
      micron: enable micron-nvme.c build without json-c dependencies checking
      ocp: add ocp_get_log_simple() to set UUID index
      amzn: avoid sprinkling ifdefs and use flags
      plugins: introduce OPT_FLAG_JSON for command option json
      nbft: enable nbft-plugin.c build without json-c dependencies checking
      netapp: enable netapp-nvme.c build without json-c dependencies checking
      nvidia: build plugin not depended on json without json
      scaleflux: use PRIu64 printf format string instead of llu
      scaleflux: enable sfx-nvme.c build without json-c dependencies checking
      seagate: enable seagate-nvme.c build without json-c dependencies checking
      ssstc: build plugin not depended on json without json
      wdc: enable wdc-nvme.c build without json-c dependencies checking
      util: cast to use empty function json_object_array_add parameter k
      micron: avoid sprinkling ifdefs
      intel: avoid sprinkling ifdefs
      netapp: avoid sprinkling ifdefs
      dapustor: avoid sprinkling ifdefs
      util: clean up json.h file
      nvme-print-json: update register print code to use libnvme definition
      nvme-print-json: update id-ctrl print code to use libnvme definition
      nvme: fix to use NVME_VAL() for CQ entry status field filter
      nvme-print: move obj_add_* definitions into util/json.h
      ocp: use struct nvme_timestamp type for FAHE-5 timestamp field
      ocp: remove unnecessary 64 bits mask
      ocp-print: use int48_to_long() to print 48 bits values
      util: introduce int56_to_long() type conversion helper
      ocp: add ocp dssd log id and feature id definitions
      ocp: fix to check hwcomp log size if valid
      ocp: change hwcomp log size variable name to log_bytes
      nvme-print: add NVMe 2.1 get log page LIDs string
      build: bump libnvme wrap
      nvme-print: add NVMe 2.1 get and set features FIDs string
      nvme-print-stdout: fix to print PEL set feature event FDP events
      nvme-print-stdout: use libnvme FDP events feature definitions
      nvme-print-stdout: split PEL set feature event function
      nvme-print-stdout: split PEL functions
      nvme-print: add NVMe 2.1 admin commands strings
      types: move STR_LEN definition from json.h
      nvme-print-stdout: add NVMe 2.1 identify power state descriptor fields
      nvme-print-json: add NVMe 2.1 identify power state descriptor fields
      build: bump libnvme wrap
      nvme: add mgmt-addr-list-log command
      nvme-print-json: add json_mgmt_addr_list_log()
      nvme-print-binary: add binary_mgmt_addr_list_log()
      doc: fix ocp-hardware-component-log documentation errors
      completions: fix ocp hardware-component-log zsh completion
      completions: add mgmt-addr-list-log command
      doc: add mgmt-addr-list-log command
      nvme-print-stdout: add get feature pls mode print
      nvme-print-json: add get feature pls mode print
      nvme-print-stdout: use NVME_CTRL_OACS definitions
      nvme: add NS management commands error message output
      argconfig: add argconfig_get_value()
      nvme: use blkdev for direct if namespace-id specified
      nvme: add flush command chardev handle error message
      tests: correct to check blkdev for NS attached
      tests: add blkdev checking after NS creation
      tests: add verbose options for NS management commands
      nvme: add rotational-media-info-log command
      Revert "tests: add blkdev checking after NS creation"
      completions: add rotational-media-info-log command
      doc: add rotational-media-info-log command
      nvme: change attach-ns to error out if wrong device given
      ocp: fix to free hwcomp log desc memory allocated
      build: bump libnvme wrap
      nvme-wrap: use rotational media information log libnvme-mi API
      nvme-wrap: handle get log rotational media info correctly
      nvme: add NVMe 2.1 changed-alloc-ns-list-log command
      doc: add changed-alloc-ns-list-log command
      completions: fix mgmt-addr-list-log command
      completions: add changed-alloc-ns-list-log command
      nvme: add dispersed-ns-participating-nss-log command
      doc: add dispersed-ns-participating-nss-log command
      completions: add dispersed-ns-participating-nss-log command
      completions: add and fix io-mgmt-recv and io-mgmt-send commands
      nvme: add reachability-groups-log command
      doc: add reachability-groups-log command
      completions: add reachability-groups-log command
      nvme: fix reachability-groups-log command perror message
      build: bump libnvme wrap
      nvme-wrap: do_admin_op() get_log_reachability_groups parameters order
      nvme: add reachability-associations-log command
      doc: add reachability-associations-log command
      completions: add reachability-associations-log command
      nvme-print-binary: fix to output reachability associations log length
      nvme-print-binary: fix to output reachability groups log length
      nvme-print-binary: fix to output dispersed ns participating nss log length
      nvme-print-binary: fix to output phy rx eom log length
      nvme-wrap: fix get_log_reachability_associations parameters order
      build: bump libnvme wrap
      nvme: add host-discovery-log command
      completions: fix zsh completions array parameter names
      completions: add host-discovery-log command
      doc: add host-discovery-log command
      nvme-print-json: delete json_host_discovery_log printf error code
      nvme: add ave-discovery-log command
      doc: add ave-discovery-log command
      completions: add ave-discovery-log command
      nvme: fix ave-discovery-log command LID setting
      nvme: add pull-model-ddc-req-log command
      doc: add pull-model-ddr-req-log command
      completions: add pull-model-ddc-req-log command

Tomas Bzatek (1):
      nbft: Report proper error codes from discover_from_nbft()

Vigneshwaran Saravanan (1):
      plugins/ocp: Added OCP 2.6 telemetry support Updated the Telemetry Structure and Enum to support the OCP 2.6 spec

Warner Losh (2):
      micron: Add missing newline
      wdc: On FreeBSD, get the timezone the same as with real glibc

Xiaoyuan Zhang (1):
      nvme-print: fix Arbitration Mechanism Supported

dependabot[bot] (1):
      build(deps): bump codecov/codecov-action from 4 to 5

hsdhillo (2):
      plugins/solidigm: Replace snprintf with asprintf
      plugins/solidigm: Telemetry null check json object

jeff-lien-wdc (3):
      wdc:  Fixes for SNTMP Capabilities
      ocp: Fixes for OCP 2.5 Telemetry Stats Parsing
      ocp: Update ocp plugin version

liuzhen (1):
      ocp-nvme: fix the error display of Hardware Component Log

mh2022-meta (1):
      Fixed latency_monitor_feature_enable to be 01h as per OCP spec v2.0