v2.2
Also for the nvme-cli project, Jeremy Kerr was very busy getting MI sorted out. Many of the NVMe commands can now be submitted over the MI transport. Thanks a lot!
There was a bit of activity for the fabrics commands, e.g. there is the new nvme topology
command or the feature to re-read the discovery page when a discovery controller reconnects.
Also the vendor plugins have gotten some updates for this release.
And as usual there are many bug fixes along since v2.1. Noteworthy here is the fix for printing the uint128 data fields correctly. Thanks Steven to pick this task up.
Again thanks a lot for all those who contributed to this project: Debabrata, Francis, Jeremy, Jinliang, Martin Belanger, Martin George, Maurizio, Pierre, Sagi, Simon, Steven, Tokunori, Tomas, Leonardo, innogritkenny.
For packagers: we dropped the libuuid dependency.
Daniel Wagner (38):
json: Support uint64 types serialization for older json-c versions
nvme: Masks SSTAT in sanize-log output
doc: Add 'how to contribute' section
docs: Update formatting for sanact list
nvme-print: Add missing values in id-ctrl for JSON output
util: Move common type conversion helpers into util section
doc: Update examples in nvme-list-subsys.txt
nvme-print: Use uint128 JSON function for media_units_written
plugins: Use PRIu64 format specifier for 64bit types
plugins/wdc: Add type case for feature id
plugins/micron-nvme: Use correct print format specifier for sizeof arguments
nvme: Use correct print format specifier for sizeof arguments
build: Update json-c.wrap
fabrics: nvme config --modify depends on -n and -t argument
fabrics: Honor JSON config file in connect-all command
fabrics: Trigger auto connect if config.json exists
tests: Update license to GPL-2.0-or-later
build: Use meson.current_build_dir() for tests
build: Update zlib wrap
build: Update json-c.wrap
build: Update libnvme wrap
libvnme-wrap: Rename file
libnvme-wrap: Avoid fallback as variable name
nvme: Add show-topology command
doc: Add nvme show-topology documnetation
completions: Add show-topology tab completion
build: Update libnvme wrap
build: Drop dependency on libuuid
util/json.h: Add json_object_get_uint64 fallback implementation
solidigm: Fix printf format for size_t variable
build: Update libnvme wrap
build: Update min version of meson to 0.48
build: Remove unused uuid.wrap file
build: Fix endian check for cross build
REAMDE: Drop reference on uuid
build: Update libnvme wrap
build: Update version to v2.2
doc: Regenerate all docs for v2.2
Debabrata Bardhan (2):
plugins/seagate: Add support for OCP
doc: Add and update man pages for seagate plugin
Francis Pravin Antony Michael Raj (1):
nvme: Add helper function to parse 16-bit comma separated list
Jeff Lien (3):
wdc: OCP Log page updates and fixes
print: Add Controller Ready Timeout Exceeded HW error code
plugins/wdc: Add support for SN660 drive
Jeremy Kerr (34):
tree: Move global device info to a single struct
tree: Combine NVMe file descriptor into struct nvme_dev
plugins/wdc: pass a struct nvme_dev around rather than a fd
plugins/toshiba: pass struct nvme_dev rather than fd + name
plugins/ocp: pass struct nvme_dev to internal functions
plugins/wdc: pass struct nvme_dev rather than using global nvme_dev
plugins/ytmc: pass struct nvme_dev rather than fd + name
tree: Change nvme_dev from global to static
nvme: Use local struct nvme_dev for show_registers & map_registers
nvme: Make static nvme_dev private to open_dev(), use locals elsewhere
nvme: Remove static nvme_dev, allocate on open instead
tree: Add dev_fd() helper
nvme: Introduce a union in struct nvme_dev for different transport types
tree: Add NVMe-MI support
nvme: Introduce nvme_cli_ wrappers, wrap identify and identify_ctrl
subprojects/libnvme: update for MI admin command coverage
nvme: Add nvme_cmd wrapper for get_features
nvme: Add wrappers for basic NS identify
nvme: Add wrappers for NS management functions
nvme: Add wrappers for Identify controller lists
nvme: Add wrappers for NS attach/detach
nvme: Add wrapper for Format NVM
nvme: Add wrapper for Sanitize NVM
nvme: Add wrappers for Get Log page helpers
tree: fail on non-negative return values from parse_and_open
utils: Fix uint128_t usage
util: Fix le128_to_cpu on big-endian
nvme, plugins: fix __u64 -> unsigned long long assumptions
github workflows: add armhf and ppc64le cross compile checks
libnvme.wrap: Bump to 677075a1
nvme: Add wrappers for firmware commands
nvme-print: decode status types
nvme: use helpers for checking status types
nvme-print: decode MI status values
Jinliang Wang (1):
util: Fix le128_to_cpu on little-endian
Martin Belanger (1):
udev: Add HOST_IFACE to udev rule
Martin George (2):
solidgm: fix initialization warning
fabrics: fix 'persistent' handling during connect-all with JSON file
Maurizio Lombardi (1):
nvme: check if cfg.metadata is NULL before passing it to strlen()
Pierre Labat (1):
nvme-print: Print fguid as a UUID
Sagi Grimberg (1):
fabrics: re-read the discovery log page when a discovery controller reconnected
Simon A. F. Lund (1):
Makefile: add 'make uninstall'
Steven Seungcheol Lee (9):
nvme-print: fix wrong json key
zns.c: report zones should be started after retrieved zone
util/types: Add 128 bit conversion helpers
util/json: Add 128 bit JSON helpers
nvme-print: Output 128bit values as uint128 type instead of double
plugins/ocp: Output 128bit values as uint128 type instead of double
plugins/wdc: Output 128bit values as uint128 type instead of double
plugins/virtium: Output 128bit values as uint128 type instead of double
Makefile: Add 'make debug' for debug build
Tokunori Ikegami (1):
nvme: Fix set feature command to get feature identifier 0Dh length as zero
Tomas Bzatek (1):
nvme-print: Handle NULL hostid in JSON output
da Cunha, Leonardo (1):
Added parsing for Solidigm telemetry observable data.
dependabot[bot] (1):
build(deps): bump actions/checkout from 2 to 3
innogritkenny (2):
plugins/innogrit: add smart items for smart-log-add
add item ddr_ecc_err_cnt in smart-log-add
leonardo.da.cunha (3):
utils/json: Add json_object_new_uint64 for json-c < 0.14
solidigm: Added parsing for telemetry customer screenable data
solidigm: Updated Telemetry parsing code to MIT license.