v2.5
A couple of noteworthy features made it to this release:
- Support for the NVMe-oF boot specification v1.0 has been added by Timberland SIG.
- Ignoring fabric connect attempts if the execution context doesn't match.
This feature allows to make different users of nvme-cli to coexist, e.g. nvme-cli, nvme-stas or blktests without trying
to manage the same resource
Tokunori Ikegami was very busy and provided a lot of cleanup patches including code style fixes which should make the code base a bit more uniform.
In the meantime I was busy refactoring the printing code. The aim here is to prepare the code base for the upcoming NVMe v2.1 release which hopefully will bring an official JSON description for all the definitions etc. From this we should be able to create code include printing code. But that's future work.
plugins/solidigm
and plugins/ocp
learned a few new subcommands
Also this release brings a lot of fixes, too many to list them all here.
A big thanks goes to Arthur Shau, Arunpandian J, Caleb Sander, Dmitry V. Levin, John Meneghini, Martin George, Martin Wilck, Mateusz Kozlowski, Maurizio Lombardi, Sagi Grimberg, Stellios Leventis, Steven Seungcheol Lee, Stuart Hayes, Tokunori Ikegami, Umer Saleem, Vigneshwaran Saravanan, Wei Hou, da Cunha, Leonardo, dependabot[bot], hsdhillo, innogritkenny, jaya.ganthan, kdedow, leonardo.da.cunha, yjin
Arthur Shau (6):
plugins/ocp: Reorganize OCP plugin source code
plugins/ocp: Fix typos in Latency Monitor Log
plugins/ocp: Add missing fields in Latency Monitor Log
plugins/ocp: Fix endianness in Latency Monitor Log output
plugins/ocp: Add OCP set latency monitor feature command
plugins/ocp: Add telemetry-log command to OCP plugin
Arunpandian J (4):
tests: Add tests for controller reset
plugins/ocp: Add Device capability(LID: 0xC4) log page
completions: Add bash completion for OCP Device capability(LID: 0xC4) log page
Documentation: Add document for OCP Device capability(LID: 0xC4) log page
Caleb Sander (1):
nvmf-autoconnect: restart service to avoid dropping AEN
Daniel Wagner (51):
build: Add external AppImage upload workflow
build: Use sftp transport for AppImage deploy step
build: Deploy AppImage only for push on master
build: Fetch all references before using git describe
nvme-print: Use enum nvme_print_flags for nvme_show_id_ctrl
build: Bump libnvme wrap
build: Disable fallback on default
build: Make json-c dependency lookup not fail
build: Extend summary section
build: Update wrap mode defaults
doc: Update REAMDE
build: Fix appimage configuration
build: Extend static linked binary build test
build: Install missing s390 library
build: Do not use json-c fallback for muon minimal build
nvme-print-json: Update function sigs for !json-c builds
nbft: Make json-c output depending on config flag
nbft: Add stdlib.h include
nbft: Add include util/types.h
nvme-print: Double function definition
nvme-print: Export generic to string functions
nvme-print: Unify flag passing into functions
nvme-print: Split add_bitmap implementation
fabrics: Move printing functions to the print files
print: Introduce print ops structure
nvme-print-json: Refactor json print code to use nvme_print_ops
nvme-print-stdout: Refactor stdout print code to use print_ops
nvme-print-binary: Refactor binary print code to use print_ops
nvme: Use correct metadata buffer size
nvme: Use correct data buffer size
fabrics: Revert 'fabrics: prevent 'nvme connect' to well-known discovery NQN'
fabrics: Do not print device on connect per default
plugins/nbft: Use common code to parse print flags
build: Bump libnvme wrap
build: Reformat build_opionts.txt
fabrics: Add support for volatile configuration
nvmf-autoconnect: Annotate the context to autoconnect
doc: Add information on --context
docs: Update file modes
scripts: Move helper scripts to a central place
scripts: Execute the scripts from toplevel directory
scripts: Update update-docs.sh scripts
scripts: Make release script project neutral
build: Bump libnvme wrap
build: Use containers with matrix build
nvme-print: Fix typo in callback definition
nvme-print: Move num argument parsing into callbacks
nvme-print: Remove left overs from refactoring
build: Bump libnvme wrap
build: Update version to v2.5
doc: Regenerate all docs for v2.5
Dmitry V. Levin (1):
udev: fix warning reported by udevadm verify
John Meneghini (1):
nbft: make lookup_ctrl function public
Martin George (2):
fabrics: fix fc config JSON file handling
fabrics: prevent 'nvme connect' to well-known discovery NQN
Martin Wilck (1):
fabrics: fix conditions in nvmf-autoconnect.service
Mateusz Kozlowski (1):
nvme: Fix nvme format block-size option handling
Maurizio Lombardi (2):
nvme: fix rnlpt to_string() values.
Revert "nvme: Masks SSTAT in sanize-log output"
Sagi Grimberg (1):
nvme-print: fix wrong list-subsys output when ns are attached to different ctrls
Stellios Leventis (1):
plugins/wdc: Extend SN530 support.
Steven Seungcheol Lee (10):
nvme-print: Add VWCNP on NSFEAT of id-ns
nvme-print: Add new fields print on id directive
nvme: Add dtype, dspec on write-zeroes, write-uncor
nvme: Add ns-mgmt host software specified fields
nvme: Add zns specfic field for create ns
build: Bump libnvme.wrap to align create ns args
fdp: set-events feature is saveable
nvme: fix io_mgmt args parse error
build: Bump libnvme wrap to fix io_mgmt apis
nvme-wrap: do_admin_args_op should not clear args timeout
Stuart Hayes (2):
nbft: added NBFT v1.0 table support
nbft: add the nbft show plugin
Tokunori Ikegami (92):
nvme: Add support for NVMe-MI receive command
nvme: Fix passthru command function indentation errors
nvme: Use stdout for passthru and submit_io commands success messages
nvme: Add support for NVMe-MI send command
doc: Add eol-plp-failure-mode command documentation
doc: Add clear-pcie-correctable-error-counters command documentation
doc: Add nvme-mi-recv command documentation
doc: Add nvme-mi-send command documentation
doc: Documentations maintenance changes
nvme: Fix format command to skip to reread NSID all block device
nvme-printf: Add show error function for nvme list command json output
util: Check output format json for json error message output
nvme: Use nvme show error API to outptu stderr messages for json format
nvme: Check validate output format err value instead of flags
nvme: Fix indentation errors around nvme show error API
fabrics: Fix linux kernel check patch errors and warnings
fabrics: Return errno value as negative
nvme-print-json: Use vasprintf instead of vsnprintf to allocate string
nvme: Add nvme_show_perror to use instead of perror for json output
nvme: Fix linux kernel check patch errors
nvme: Fix linux kernel check patch warnings
util: Delete unused argconfig help function
util: Delete unused argconfig file types
util: Delete unused argconfig subopts type
util: Add argconfig parse value function
nvme: Change sanitize command action option to use argconfig parse value
util: Delete argconfig value length to calcurate instead
util: Split to set argconfig option value
util: Delete argconfig value type to add option value as va lists instead
util: Delete unnecessary argconfig definitions OPT_VAL and CFG_VAL
nvme: Fix get-feature command sel parameter check to allow value 8
completions: Add json command option
completions: Fix nvm-id-ns-lba-format command zsh definition
completions: bash: Add id-domain command
completions: bash: Delete unsupported id-iocs command options
nvme: Set effects-log command csi option help message string
Fix incorrect article 'an' as 'a' to use for descriptions and message
completions: Add missing zsh commands descriptions
doc: Correct nvme-show-hostnqn command NAME description
completions: Add bash option values handling for sanitize command action
completions: Add ocp commands bash completion
completions: Add ocp commands zsh completion
completions: Add ocp sub commands zsh completion
completions: Add zsh option values handling for sanitize command action
util: Fix suffix_si_parse to parse no decimal point but suffix value correctly
nvme: Fix io-passthru command read metadata output
nvme: Split passthru commands read output
fabrics: Change NVMF_OPTS as NVMF_ARGS to fix linux kernel check patch error
fabrics: Fix NVMF_ARGS macro indentation error
nvme-print: Fix nvme_show_error() to call va_end() for json output format
nvme-print-json: Add json output result function
nvme-print: Add nvme show result function
ocp: Add eol plp failure mode json outputs
plugins/ocp: Fix ocp-nvme.c linux kernel check patch errors
plugins/ocp: Fix ocp-nvme.c linux kernel check patch warnings
plugins/ocp: Fix remaining files linux kernel check patch warnings
plugin: Fix files linux kernel check patch errors and warnings
plugins/toshiba: Fix linux kernel check patch errors and warnings
util: Fix argconfig.c linux kernel check patch error and warnings
util: Fix base64.c linux kernel check patch errors and warnings
util: Fix crc32.c linux kernel check patch errors and warnings
util: Fix types.c linux kernel check patch warnings
plugin: Change version and usage names for linux kernel check patch warnings
util: Move falltrhough feature check to meson.build
plugins/wdc: Refactor wdc-nvme.c for linux kernel check patch errors and warnings
plugins/wdc: Fix wdc-utils.c linux kernel check patch errors and warnings
plugins/amzn: Fix amzn-nvme.c linux kernel check patch error and warnings
plugins/dera: Fix dera-nvme.c linux kernel check patch errors and warnings
plugins/fdb: Fix fdb.c linux kernel check patch warnings
plugins/huawei: Fix huawei-nvme.c linux kernel check patch errors and warnings
plugins/innogrit: Fix innogrit-nvme.c linux kernel check patch errors
plugins/inspur: Fix inspur-nvme.c space indentation to tab indentation
plugins/inspur: Fix inspur-nvme.c linux kernel check patch warnings
plugins/intel: Fix intel-nvme.c linux kernel check patch errors and warnings
plugins/memblaze: Fix memblaze-nvme.c space indentation to tab indentation
plugins/memblaze: Fix memblaze-utils.h space indentation to tab indentation
plugins/memblaze: Fix memblaze-nvme.c linux kernel check patch errors and warnings
plugins/micron: Fix micron-nvme.c space indentation to tab indentation
plugins/micron: Fix micron-nvme.c linux kernel check patch errors and warnings
plugins/nbft: Fix nbft-plugin.c linux kernel check patch warnings
plugins/netapp: Fix netapp-nvme.c linux kernel check patch errors and warnings
plugins/scaleflux: Fix sfx-nvme.c linux kernel check patch errors and warnings
plugins/seagate: Fix seagate-nvme.c linux kernel check patch warnings
plugins/shannon: Fix shannon-nvme.c linux kernel check patch errors and warnings
plugins/solidigm: Fix linux kernel check patch errors and warnings
plugins/transcend: Fix transcend-nvme.c linux kernel check patch errors and warnings
plugins/virtium: Fix virtium-nvme.c linux kernel check patch errors and warnings
plugins/ymtc: Fix ymtc-nvme.c space indentation to tab indentation
plugins/ymtc: Fix ymtc-nvme.c linux kernel check patch warning
plugins/zns: Fix zns.c linux kernel check patch errors and warnings
nvme: Fix quoted string split across lines to use quoted newline
plugins/micron: Correct NULL pointer checking error
Umer Saleem (3):
libnvme.wrap: Bump to 42ac453
nvme-print-stdout: Print PCI physical slot number for controller
nvme-print-json: Print PCI pysical slot number for controller
Vigneshwaran Saravanan (1):
plugins/ocp: Added ocp unsupported requirements log page
Wei Hou (2):
util/types: Move convert_ts to util/types
util/types: Add generic spinner
da Cunha, Leonardo (3):
plugins/solidigm: Fixes and clean-up of Telemetry parse code. Fixed parsing of 64 bit values. Fixed COD field name. Fixed compilation warnings when compiling for 32 bit. Added missing free(). Consolidated single entry function to telemetry parser. Consolidated use of integer types.
plugin/solidigm: Added vs-internal-log command.
plugins/solidigm: Formated log page directory table consistently with "nvme list" format.
dependabot[bot] (1):
build(deps): bump sand4rt/ftp-deployer from 1.4 to 1.7
hsdhillo (1):
plugins/solidigm: Added Marketing Name Log support for Solidigm.
innogritkenny (1):
plugins/innogrit: Add vendor command get-eventlog and get-cdump
jaya.ganthan (1):
plugin/ocp: Added implementation for 0xC1 log page
kdedow (5):
plugins/ocp: Add firmware activation history log to OCP plugin
plugins/solidigm: Add firmware activation history log to Solidigm plugin
solidigm: Add supported log pages log feature to Solidigm plugin
solidigm: Changes to supported log pages feature requested by review
solidigm: Reduce memory usage in supported log pages feature
leonardo.da.cunha (2):
plugins/solidigm: Added NLog support to Telemetry parsing. Telemetry Reason Identifier fields changed to start with lower case.
plugins/solidigm: Added Identify controller VU extensions parsing.
yjin (1):
plugins/sfx: sfx-nvme add expand-cap & dump evtlog cmd