nvme-cli: Bump SRCREV to 73d468229 and package libnvme-cli
Bump nvme-cli SRCREV to 73d468229cf2dfd2dd9f8c7c21406174f85b172d to
support OOB set-feature commands. This version also includes the upstreamed
fix for the MCTP open SIGSEGV (b/538280251).
Re-adapt and fix 0001-add-libnvme_cli.patch to work with the bumped
version. Resolve compile errors caused by header decoupling by adding
necessary includes in print utilities and OCP/Solidigm plugins.
Correct packaging rules by prioritizing the main package ${PN} to ensure
the real library libnvme-cli.so is packaged in the main package, while
unversioned symlink libnvme3.so is correctly assigned to the -dev package.
Remove unused NetworkManager files.
Shortlog:
Akhilesh RN (1):
linux: Update size when telemetry controller initiated data is unavailable
Alexandr Goncharov (1):
tree: fix store uuid/nguid from sysfs
Alfred Wingate (1):
build: remove symbol which doesn't exist in libnvme-mi.so
Alistair Francis (1):
fabrics: set persistent when connecting to a discovery controller
Anant Mashiana (2):
completions: added Solidigm plugin to autocomplete scripts
plugins/solidigm: Added extra VU fields to id-ctrl
Andreas Hindborg (2):
Fix bug in `nvme_identify_iocs`
Fix a bug where CSI was not passed to to nvme_ns_mgmt
Andrew Jeffery (1):
mi: Probe quirks on first command submission
Andrew Meir (2):
Add support for codeql sweeps
Updates to codeql config
Ankit Kumar (6):
types.h: Add missing enum for power state descriptor
types.h: add missing enum for optional admin command support
types.h: add missing enum for firmware updates
types.h: add missing description and enum for log page att
types.h: add missing enum for optional nvm command
types.h: add missing enum for format nvm attributes
Ankit Soni (4):
types: added new fields in nvme_nvme_id_ns
build: update libnvme wrap
nvme-print: added new fields for nvm_id_ns
libnvme: add lockdown log page support(LID : 0x14)
Anuj Gupta (1):
ioctl: nvme_uring_cmd add structure and opcodes
Arbaz Khan (3):
type: Added enums for ANSAN and RGCNS bit of OAES field
type: Using enums of ANSAN and RGCNS bit for OAES
types,util: Added Enums for missing status codes
Arno DUBOIS (1):
docs: add missing API types documentation
Arthur Shau (11):
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
plugins/ocp: Rename FW activation history command
plugins/ocp: Fix printing order of various Latency Monitor Log buckets
ocp: Add Get DSSD Power State Feature (FID: C7h)
ocp: Switch OCP plugin to use semantic versioning
docs: Add missing OCP plugin docs to meson
Arunpandian J (35):
nvme: Add Media Unit Status log page(LID: 0x10)
Clean up Patch for types.h, ioctl.h
nvme: Add Supported Capacity Configuration List log page(LID: 0x11)
nvme: Add Enhanced Controller Meta Data(FID: 0x7D)
types: Added doc description for fields used
ioctl.h: Add description for fields used
linux: Streamline documentation
log: Fix whitespacing in documentation
tree: Add missing documentation
types.h: Add missing documentaion for all the log pages
types.h: doc update for ZNS structures
types: doc field update for NVM commands, Feature Identifiers
types: All MI command related structure doc field update
types: Add doc field for admin opcodes, FIDs, LIDs, Identify commands
types: Add doc section for enum fields
types: Add missing doc for ZNS, NVMe OF, NVMe command set
types: status code type value update as per NVMe specification
util: Add status code values in generic status to errno conversion
util: Congregate status code values to return EINVAL
util: Add status code values in order to return errno
types: Add missing doc field description
fabrics: Streamlining documentation
ioctl: Align arguments indentation with braces
test: print test logs for pass case
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
doc: Fix typo in documentation
plugins/ocp: Add DSSD Power state feature(FID: C7h)
Documentation: Add document for DSSD Power state feature(FID: C7h)
completions: Add bash completion for DSSD Power state feature(FID: C7h)
completions: Add bash completions for telemetry string log page
Documentations: Add document for telemetry string log page
plugins/ocp: Add OCP Telemetry String log page, Telemetry log page
Bao Tran (1):
nvme-print: Split max power flags
Bean Li (1):
nvme: do not include meta data for PRACT=1 and MD=8 (version 2)
Ben Chuang (2):
util: Fixed nvme_id_ns_flbas_to_lbaf_inuse()
test: Add unit test for nvme_id_ns_flbas_to_lbaf_inuse()
Ben Reese (2):
Plugin: ScaleFlux Adding Status Command
ScaleFlux Plugin Cleanup AER Values
Benjamin Drung (2):
doc: Fix spelling mistakes found by lintian
examples: Fix wrong indentation in discover-loop.py
Boris Glimcher (19):
pyproject.toml instead of setup.py for new packaging
Add workflow to publish to PyPI and TestPyPI
Workflow: temporary disable publish to PyPI, starting with TestPyPI
CI: rename branch main to master
openssl: update to patch-3 to fix installation issue
test: adding dependency on pynvme
CI: add test for subproject fallbacks compilation
CI: add python wheel build in addition to source package
dist: add missing BuildRequires to spec file
rpm: add makefile rule for rpms
CI: fixing dist packaging error
readme: Add github badges
ci: add code coverage
ci: create first dependabot.yml
doc: add quickstart and installation
doc: update installation doc
build: use uuid wrap for fallback build
ci: add static library compilation
build: switch to new python meson backend
Brando (1):
doc: Fixing compile instruction in README
Brandon Capener (13):
build: fix spelling
build: initial windows support
build: remove unneeded windows check
linux: Add crypto.c and no-crypto.c with shims for methods implemented in linux.c Adds compatibility shims for linux.c methods when building on Windows.
build: remove default prefix option
build: include more source files in windows build
tree: split platform code into separate files
lib: add windows direct open transport handle support
tree: minor refactor of subsystem init
tree: add global context to libnvme_get_ctrl_transport
tree: add windows tree support
nvme: add windows support for rpmb hash functions
nvme: enable cli for windows build
Brandon Paupore (31):
ioctl: Add Timeout Parameter for Zone Management Commands
types: Enable telemetry data area 4 in base
Add lbstm support for create-ns
Remove nvme_init_id_ns
libnvme: 64-bit Reference Tags and TP-4068 changes
types: Add support for the OAQD ID controller field
types: Support Phy Rx Eye Opening Measurement Log
nvme: Add support for the OAQD ID controller field
nvme: Fix for fdpa reserved field printing
nvme: Introduce nvme_realloc function
nvme: Spport Phy Rx Eye Opening Measurement Log
plugins/wdc: cleanup line lengths
plugins/wdc: enhanced SN861 device support
ioctl: MSB variable-size storage/reference tags
ocp: fix for power-state argument checking
ocp: support OCP 2.5 Set Telemetry Profile feature
ocp: support OCP DSSD Async Event Config feature
ocp: Unify line start spacing as tabs
plugins/ocp: underflow + index fixes for telemetry
wdc: add support for SNTMP drive
wdc: rework log retrieval and parsing
sndk: rework shared capabilities with wdc plugin
sndk: vs-internal-log udui support
wdc: invalid customer ID fix
ocp: fix Ext SMART log page version 5 checking
ocp: minor feature name fixes
plugins: update default telemetry retrieval DA
nvme-print: support PEL VS Events and Info
plugin: cleanup vs-internal-log documentation
nvme-print: expose PEL print functions
ocp: add Persistent Event log support
Brenden Bain (2):
sed: fixing SID and MSID reporting
sed: clarifying SUM sed policy reporting
Broc Going (84):
min: Cleaned up usage of MIN in favor of safer CCAN min.
mi: fix build with MI support disabled
lib: Give blkdev and chardev checks platform-agnostic names
fabrics: Made more includes conditional on fabrics support
nvme: Make mmap functionality conditional on mmap support
ioclt: Add libnvme wrapper for updating block size after format
json: Enables json printing and ocp plugin without fabrics
mem: implement allocation helpers for Windows
mem: implement huge page allocation APIs for Windows
private: include ifaddrs when needed
nbft: Moves public nbft methods from libnvme to libnvmf
util: add cross-platform compatibility for errno values.
nvme: return NVMe status codes for protocol errors
lib-types: introduce file descriptor abstraction
mem-win: Remove unneeded includes and definitions.
nvme: Use libnvme_free for all memory allocated with libnvme_alloc
ocp: Fix no-uuid parsing in ocp_clear_feature
ocp: Fix fw activation log error reporting for negative err values
micron-nvme: Use libnvme_alloc for log data buffers
micron-nvme: Fix telemetry log reading
micron-nvme: Fix vs-drive-info output format check
micron-nvme: Clean up vs-nand-stats
micron-nvme: Fix error reporting for commands that were failing silently
sighdl: Add windows compatibility for sighdl
amzn-nvme: Use signal if sigaction is not supported
common: Add compatibility wrappers for common functions.
util: Move get_entity_name and get_entity_version into util-fabrics.
mem-win: Disable Windows min/max macros in favor of project solutions
nvme-print-json: Replace uint with __u32
endian: Remove redundant _WIN64 check
micron-nvme: Add support for telemetry data area 4
micron-nvme: Fix unchecked string copies of path strings
ocp: Fix ocp internal-log output-format handling
ioctl: Add Windows ioctl support
check-public-symbols: Update text reading to work on Windows also
ibm-nvme: Use memset instead of bzero for standard compatibility
plugins: Fix casting errors when using unsigned long
ocp-nvme: Replace fstat checking of S_ISBLK with built-in check
log: Add Windows compatibility for __libnvme_msg formatting
util: Add compatibility for libnvme_random_uuid
fdp: Remove unused linux/fs.h include
nvme-print: Fix nvme_bar_cap cps field alignment
top: Make top a conditional feature and disable by default on Windows
common: Add cross-platform wrapper for opening raw data files
nvme: Add O_BINARY setting to stderr and stdout on Windows
ioctl-win: Update sanitize implementation to use new ioctl
ioctl-win: Assert ctrl handle for Windows format nvm
micron: Clean up formatting and remove unneeded macros
micron: Add cross-platform support for getting drive model
micron: Add cross-platform handling of PCIe correctable errors.
micron: Add platform-specific GetOSConfig implementations
micron: Add .zip file support and fix rm errors on Windows
micron: Update plugin version to 2.1.0
micron: Fix command injection vulnerabilities
solidigm: Apply fixes to allow compilation on Windows
micron: Fix buffer overflow vulnerabilities
micron: Fix possible NULL pointer dereference issues
micron: Fix temp directory access security
nvme: Open files using nvme_open_rawdata to fix Windows issues
ioctl-win: Implement reset_ctrl_device using a PnP-level reset.
tests: Add is_windows check and skip unsupported tests on Windows
tests: Configure PATH for tests in a platform-agnostic way.
tests: Update get features test base on Windows capabilities
test-uint128: Update tostr_test locale handling to be Windows compatible
test: Update build configuration to support testing on Windows
tests/plugins: Expand testing framework to support plugin tests
tests: Add linting support for all python files recursively under tests.
nvme_test: Update run_ns_io to be platform agnostic.
plugins: Add build support on Windows
build: Add statically-linked build support for Windows.
build: Copy libnvme DLL for running and testing Windows shared builds
readme: Add readme section on Windows build and environment setup script
nvme-print: Update generic name listing to be platform independent
pci-ids: Add nvme-pci-ids for cross-platform reading of IDs
nvme-models: Update product name detection to use nvme-pci-ids
micron: Use new nvme-pci-ids to get PCI IDs
tests/micron: Add vs-internal-log tests for micron plugin.
micron: Fix vs-internal-log return value on error
tests/micron: Add micron vs-temperature-stats tests and fix command
tests/micron: Add micron vs-pcie-stats tests and fix command issues
tests/micron: Add micron clear-pcie-correctable-errors tests
micron: Fix vs-pcie-stats output-format handling
tests/micron: Add micron vs-drive-info tests
nvme: Add nvme args support for different supported output formats
Brooke Ellis (4):
nbft: fix sizeof operand mismatch in pointer array allocations
plugins/wdc: fix typed malloc size expressions for log buffers
nbft: fix missing error checks for ftell() and rewind()
test: replace rewind() with fseek() to enable error detection
Bryan Gurney (1):
nvme: set eds to true if controller supports 128 bit hostid
Caleb Sander (57):
json_discovery_log: avoid buffer overrun
nvme-print: Fix printing of u32 values
fabrics: handle /dev/nvme-fabrics read failure
fabrics: check genctr after getting discovery entries
nvmf-autoconnect: restart service to avoid dropping AEN
ioctl: fix RAE bit on last Get Log Page command
nvme-print: fix argument order for show functions
fabrics: only look for matching ctrl on same host
test: add infra for mocking passthru ioctls
test: add discovery log page tests
build: clean up version script
ioctl: remove nsid from nvme_identify_secondary_ctrl_list()
test: pass a large enough buffer to nvme_identify_ns_descs()
ioctl: use available Identify helper functions
test: add tests for Identify functions
fabrics: only look for spaces in strchomp()
fabrics: unconditionally strip discovery entry strings
test: account for discovery log page entry stripping
ioctl: correct feature IDs in Get/Set Features commands
ioctl: set correct bits in Set Features commands
ioctl: pass data for Get/Set Features commands
ioctl: avoid sending uninitialized timestamp
ioctl: don't set SAVE bit on unsaveable features
ioctl: pass ENDGID in nvme_get_features_endurance_event_cfg()
ioctl: export nvme_{g,s}et_features_iocs_profile()
ioctl: fix swapped parameters in nvme_set_features_host_id()
ioctl: pass NSID in Get/Set Features commands that use it
ioctl: implement nvme_set_features_lba_range()
test: add tests for Get/Set Features functions
fabrics: use SECTYPE to determine whether to use TLS
readme: clarify that LD_PRELOAD is not needed for ASAN
readme: add instructions for enabling UBSAN
test: make LD_PRELOAD tests work with ASAN
test: don't pass NULL to memcmp() or memset()
nbft: Avoid unaligned pointer dereferences
test: Avoid unaligned pointer dereferences
types: Cast values to u32 if shift overflows int
mi: Cast values to u32 if shift overflows int
test: Cast values to u32 if shift overflows int
types: add Host Behavior Support field definitions
print-stdout: print Host Behavior Support correctly
fabrics: clear RAE for discovery log page commands
fabrics: avoid redundant Get Log Page on retry
fabrics: fetch smaller Discovery Log Page header
fabrics: have nvmf_get_discovery_log() call nvmf_get_discovery_wargs()
fabrics: avoid redundant args in nvme_discovery_log()
libnvme-wrap: exit on VOID_FN lookup failure
tree: fix incorrect return value
cleanup: add cleanup functions
tree: use cleanup functions
fabrics: use cleanup functions
json: use cleanup functions
linux: use cleanup functions
util: use cleanup functions
cleanup: remove unused cleanup_charp()
nvme: simplify cleanup_nvme_dev()
nvme: Remove unused cfg argument from NVME_ARGS() macro
Caleb Sander Mateos (37):
sysfs: minimize heap allocations of sysfs paths
test: use diff to compare sysfs output
nvme-wrap: remove unused nvme_cli_get_log_ana_groups()
ioctl: fix nvme_get_log_ana_groups() pointer type
ioctl: respect rae in nvme_get_log_ana()
ioctl: replace nvme_ana_rsp_hdr in doc comments
ioctl: add support for atomic, piecewise ANA log fetch
test: support returning shorter buffer in mock ioctl
test: log mock ioctl command fields in hexadecimal
test: add mock ioctl tests for atomic ANA log fetch
libnvme: export nvme_mi_admin_get_ana_log_atomic()
linux: add nvme_get_ana_log_len_from_id_ctrl()
build: update libnvme wrap
nvme: fix maximum ANA log page length calculation
nvme: use libnvme's atomic ANA log page fetch
test: add test cases for argconfig option values
test: add test cases for argconfig comma-separated array parsing
util: remove argconfig CFG_SIZE type
util: remove argconfig_parse_val() declaration
util: make argconfig_set_opt_val() a void function
util: use cleanup to avoid goto in argconfig_parse()
util: remove redundant NULL check in argconfig_print_help()
util: inline argconfig_parse_byte()
util: remove redundant cast in argconfig_parse_type()
util: remove unnecessary parentheses in argconfig_parse_type()
util: remove empty default case in argconfig functions
util: reduce arguments passed to argconfig_parse_type()
util: reduce complexity of argconfig_parse_val()
util: consolidate call paths to argconfig_parse_type()
util: reduce allocation sizes in argconfig_parse()
util: introduce is_null_or_empty() to avoid strlen()
util: remove redundant loop condition in argconfig_parse()
util: avoid duplication in argconfig_parse_comma_sep_array*()
nvme: use argconfig_parse_comma_sep_array_u16() in attach-ns
util: remove unnecessary NULL check in cleanup_nvme_root()
nvme: avoid unnecessary dup() + close() in io_mgmt_send()
fabrics: remove unused _discover_from_json_config_file() argument
Carl Moran (2):
plugins/wdc: fix json output for vs-nand-stats
plugins/wdc: json output format not actually json
Chaitanya Kulkarni (6):
libnvme: code cleanup src/nvme/fabrics.c
libnvme: code cleanup src/nvme/filters.c
libnvme: code cleanup src/nvme/ioctl.c
libnvme: code cleanup src/nvme/tree.c
libnvme: code cleanup src/nvme/util.c
nvme/types.h: avoid using anon enums
Chaithanya shoba (2):
plugins/micron: Add support for OCP telemetry log parsing
plugins/micron: Move OCP internal log parsing from Micron to OCP Plugin.
Changqing Li (1):
mock.c: fix checking of HAVE_GLIBC_IOCTL
Chris Leech (4):
nvmf-keys: udev rule should be using /etc/nvme
linux: TLS PSK derivation fixes
libnvme: TLS PSK derivation fixes
linux: fix HKDF TLS key derivation back to OpenSSL 3.0.8
Chris Patterson (1):
types: fix regression for vendor-specific field in nvme_id_ns
Christophe Vu-Brugier (1):
doc: fix minor mistake in README.md about dependencies
Chuck Horkin (7):
prefix: Use Request or Response Length in DLEN and DOFF for MI
mi_xfer: Added nvme_mi_mi_xfer API
mi: Add support for multiple csi buffers
mi: Introduce asynchronous event message handling
mi: Additional define options for older systems with SIOCMCTPALLOC
mi: nvme_mi_mi_xfer() is overly restrictive
mi-mctp: Fix compile bug in test/mi-mctp.c when !HAVE_LINUX_MCTP_H
Clayton Craft (1):
tree: support apple-nvme transport
Daniel Néri (3):
nvme-print: add fallback for non-standard locale category
plugins/netapp: add include of libgen.h for basename(3) prototype
examples: remove unnecessary include of <bits/pthreadtypes.h>
Daniel Wagner (1663):
fabrics: Refactor uuid_from_device_tree
pynvme: Add install target to Makefile
libnvme.map: Sort global export section
libnvme.map: Add missing exports for nvme-cli
Makefile: Install log.h header file
libnvme.map: Add nvme_get_attr
Merge pull request #52 from igaw/build-meson
Merge pull request #47 from hreinecke/cleanup-sym
Merge pull request #48 from hreinecke/dump-config
Merge pull request #50 from hreinecke/csi
build: Add meson CI workflow
fabrics: Do not overflow when reading systemd_uuid
Merge pull request #61 from jk-ozlabs/cross
Merge pull request #56 from igaw/meson-ci
fabrics: Remove 'UUID derived from machine-id' feature
build: Allow subproject meson builds
Merge pull request #64 from igaw/meson-subproject
build: Set minimum version for json-c
Merge pull request #66 from jk-ozlabs/fixes
build: Split libtool versioning from project versioning
Merge pull request #67 from igaw/libjson-c-min-version
Merge pull request #69 from birkelund/meson-fixes
Merge pull request #68 from igaw/set-lib-version
build: Add fallback dependency for json-c
Merge pull request #70 from igaw/fallback-json-c
Merge pull request #71 from martin-belanger/update-python-examples
Merge pull request #73 from martin-belanger/fix-python-dependency
build: Add missing json-c.wrap
Merge pull request #8 from birkelund/types
Merge pull request #78 from igaw/json-c.wrap
Merge pull request #77 from jk-ozlabs/ccan-fix
Merge pull request #79 from birkelund/meson-install-missing-header
libnvme.map: Expose symbols for Python binding
Merge pull request #75 from jk-ozlabs/fixes
Merge pull request #81 from igaw/fix-python-lib
ccan: Add *.c files to the build
Merge pull request #60 from martin-belanger/add-init-method
Merge pull request #86 from birkelund/fix-virt-mgmt
Merge pull request #87 from martin-belanger/add-python-testsv2
Merge pull request #83 from igaw/ccan-build-c-files
Merge pull request #89 from martin-belanger/rm-duplicate-line
Merge pull request #93 from tbzatek/docs-updates-4
Merge pull request #98 from martin-belanger/fix-iface-offset
Merge pull request #101 from sc108-lee/fix/id_psd
Merge pull request #106 from hreinecke/fixes
types: Add Identify CNS 0x18 Domain List Support
ioctl: Fix rae parameter order in __nvme_get_log
types: nvme_id_ns rsvd area modified as lbaf fields
build: Remove meson help text from meson.build
build: Adopt libsystemd versioning scheme
Merge pull request #94 from igaw/merge-nvme-cli-monolithic
build: Update json-c dependencies
workflows: Don't install libjson-c-dev
Merge pull request #107 from igaw/update-json-c-dep
build: Lower json-c dependencies
workflows: Install libjson-c-dev
Merge pull request #103 from minwooim/for-chrdev-name
build: Update json-c.wrap
build: Rename config.h to libnvme-config.h
Merge pull request #116 from igaw/update-json-c-wrap
build: Set include dirs when buidling configurator
Merge pull request #117 from igaw/update-json-c-wrap
Merge pull request #119 from minwooim/for-fix-chrdev-to-generic
build: Do not use the configurator for meson
Merge pull request #126 from igaw/drop-configurator
Merge pull request #131 from sc108-lee/fix/json-c
Merge pull request #130 from sc108-lee/remove/unused_doc
Merge pull request #129 from martin-belanger/document-sanitize-address
build: Enable ccan debug code for debug build
Merge pull request #137 from tbzatek/fabrics-fixes-2
Merge pull request #138 from tbzatek/fabrics-fixes-3
Merge pull request #142 from sc108-lee/add_map
Merge pull request #141 from igaw/ccan-debug-build
Merge pull request #143 from sc108-lee/tp4076
Merge branch 'pel_header_fix'
types: Add documentation to enum nvme_csi
ioctl: Add Offset Type to get_log_page()
Merge pull request #144 from igaw/add_get_log_page_fields_2.0
types: Add Controller Metadata and Namespace Metadata
Merge pull request #147 from sc108-lee/add/gitignore
Merge pull request #146 from igaw/add-ctrl-metadata-and-ns-metadata
fabrics: Declare loop index at the beginning of the block
Merge pull request #153 from igaw/build-fix-fabrics
util: Define inline function as static inline
Merge pull request #156 from igaw/build-static-inline
lib: Resort libnvme.map
build: Avoid including wrong config.h as subpackage
build: Use _dep postfix for all dependency objects
build: Set C dialect and warning level
Merge pull request #159 from igaw/build-cleanups
Merge pull request #155 from martin-belanger/replace-make-by-meson
build: Remove unused configurator
Merge pull request #162 from igaw/build-cleanup-makefile-drop
linux: Add nvme_get_logical_block_size()
linux: Add support to generate DH-HMAC-CHAP keys
Merge pull request #158 from igaw/nvme_gen_dhchap_key
Merge pull request #151 from igaw/logical-block-size
build: Remove in-tree config files from gitignore
build: Detect if Python.h header is present
Merge pull request #163 from igaw/build-check-python-devel
build: Fix *.wrap exclude pattern in .gitignore
build: Remove more in tree build artifacts
Merge pull request #167 from martin-belanger/fix-the-docs
libnvme.map: Export nvme_io
Merge pull request #150 from hreinecke/api-rework
ioctl: Remove declration of nvme_set_features_iocs_profile()
Merge pull request #172 from hreinecke/host_traddr
ioctl: Rearrange members in nvme_identify_args
ioctl: Rearrange members in nvme_get_log_args
ioctl: Rearrange members in nvme_set_features_args
ioctl: Rearrange members in nvme_get_features_args
ioctl: Rearrange members in nvme_format_nvm_args
ioctl: Rearrange members in nvme_ns_mgmt_args
ioctl: Rearrange members in nvme_ns_attach_args
ioctl: Rearrange members in nvme_fw_download_args
ioctl: Rearrange members in nvme_fw_commit_args
ioctl: Rearrange members in nvme_security_send_args
ioctl: Rearrange members in nvme_security_receive_args
ioctl: Rearrange members in nvme_get_lba_status_args
ioctl: Rearrange members in nvme_directive_send_args
ioctl: Rearrange members in nvme_directive_recv_args
ioctl: Rearrange members in nvme_capacity_mgmt_args
ioctl: Rearrange members in nvme_lockdown_args
ioctl: Rearrange members in nvme_set_property_args
ioctl: Rearrange members in nvme_get_property_args
ioctl: Rearrange members in nvme_sanitize_nvm_args
ioctl: Rearrange members in nvme_virtual_mgmt_args
ioctl: Rearrange members in nvme_io_args
ioctl: Rearrange members in nvme_dsm_args
ioctl: Rearrange members in nvme_copy_args
ioctl: Rearrange members in nvme_resv_acquire_args
ioctl: Rearrange members in nvme_resv_register_args
ioctl: Rearrange members in nvme_resv_release_args
ioctl: Rearrange members in nvme_resv_report_args
ioctl: Rearrange members in nvme_zns_mgmt_send_args
ioctl: Rearrange members in nvme_zns_mgmt_recv_args
ioctl: Rearrange members in nvme_zns_append_args
log: Introduce libnvme error codes
Merge pull request #173 from igaw/add-error-codes
Merge pull request #171 from igaw/struct-layout-v2
Merge pull request #108 from hreinecke/scan-rework
ioctl: Set provided timestamp nvme_set_features_timestamp
tree: Skip invalid pointer when scanning topology
Merge pull request #175 from igaw/fix-tests
build: Add __nvme_msg back to exported symbols
Merge pull request #176 from igaw/fix-exports
Merge pull request #180 from sc108-lee/fix/ssl
linux: Include missing stddef.h
Merge pull request #183 from igaw/add-missing-stddef
Merge pull request #164 from sc108-lee/add/flbas_to_lbaf_inuse
Merge pull request #185 from martin-belanger/ccan-static-lib
src: Use PRIu64 format specifier for uint64 types
Merge pull request #157 from Arunpandian15/Media_Unit_Status_Log_Page
Merge pull request #191 from hreinecke/tls
ioctl: Initialize all members in nvme_get_log_args
Merge pull request #192 from igaw/fix-nvme_get_log_args
Merge pull request #201 from Arunpandian15/types_h_cleanup
ioctl: Set errno when command args check fails
util: Set errno in error case nvme_get_directive_receive_length
ioctl: Fix struct nvme_get_log_args memberm alignment
ioctl: Sort members their natural size
linux: Rename __nvme_get_log_page()
libvnme: Remove __nvme_msg from export map
Merge pull request #207 from igaw/rename-__nvme_get_log_page
Merge pull request #205 from igaw/fix-64bit-alignment
Merge pull request #214 from hreinecke/kdoc
Merge pull request #217 from martin-belanger/fix-license
Merge pull request #215 from hreinecke/regen-doc
Merge pull request #211 from hreinecke/config-errors
Merge pull request #199 from Arunpandian15/Supported_Cap_Config_List_Log_Page
Merge pull request #224 from Arunpandian15/Enhanced_ctrl_MD
Merge pull request #166 from sc108-lee/for-upstream/tp4095
doc: Remove unused make.bat file
tree: Remove doublicated declaration
types: Fix doc description
doc: Mesonize documentation generation
doc: Fix sphinx setup
doc: Regenerate all documentation
Merge pull request #222 from igaw/mesonize-doc
build: Make CI build fail on warnings
Merge pull request #225 from igaw/fail-on-warnings
Merge pull request #223 from hreinecke/json-mandatory
Merge pull request #213 from jeffreyalien/telemetry-da4-2
build: Add kernel-doc CI build
Merge pull request #226 from linux-nvme/kernel-doc-ci
tree: Remove dead !LIBUUID code
Merge pull request #227 from igaw/cleanup-libuuid-dep
Merge pull request #221 from hreinecke/dump-tree
tree: Remove CONFIG_JSONC ifdefs
Merge pull request #230 from sc108-lee/fix/io_cmd
tree: Fix memleaks in __nvme_free_ns() and nvme_scan_subsystem()
build: make Python memory allocations valgrind friendly
Merge pull request #233 from igaw/fix-mem-leak
Merge pull request #238 from samiWaheed/master
Merge pull request #239 from hanumanthuh/master
Merge pull request #237 from Arunpandian15/cleanup_Description
Merge pull request #234 from jeffreyalien/uuidx-parm
Merge pull request #242 from Arunpandian15/doc_update
Merge pull request #245 from Arunpandian15/cleanup_17
Merge pull request #249 from AkhileshRN/telemetry_ctlr
Merge pull request #247 from Arunpandian15/types_h_doc_field
log: Allow nvme_msg usage with invalid root pointer
Merge pull request #246 from igaw/fix-nvme_msg
Merge pull request #250 from Arunpandian15/types_h_doc_21
Merge pull request #248 from igaw/tp8010-support-refactored
Merge pull request #252 from Arunpandian15/doc_mi
fabrics: add default port number for NVMe/TCP I/O controllers
Merge pull request #253 from igaw/port-default-port-for-discovery
doc: Do not precomple HTML doc anymore
doc: Regenerate all documentation
build: Use boolean type for docs-build default
Merge pull request #254 from Arunpandian15/mi_types
Merge pull request #255 from Arunpandian15/types_doc_24
Merge pull request #256 from Arunpandian15/doc_types_25
Merge pull request #258 from Arunpandian15/types_doc_28
Merge pull request #261 from martin-belanger/move-ccan-out-of-public-headers
Merge pull request #262 from Arunpandian15/util_01
Merge pull request #259 from Arunpandian15/fix_sct
Merge pull request #257 from glimchb/setuptools
Merge pull request #266 from glimchb/actionbranch
fabrics: Do not swap bytes for system uuid
Merge pull request #264 from igaw/fix-system-uuid
tree: Ignore traddr case in nvme_lookup_ctrl()
Merge pull request #270 from igaw/fix-pel
Merge pull request #269 from Arunpandian15/util_sc_02
Merge pull request #267 from igaw/traddr-case-insesitive
Merge pull request #272 from Arunpandian15/sc
build: Depend on libssl when using the fallback dependency
Merge pull request #273 from igaw/fix-libssl-dep
Merge pull request #236 from birkelund/meson-fixes
linux: Include private.h
linux: Add log.h back
doc: Regenerate all documentation
Merge pull request #274 from sc108-lee/status_code_type
Merge pull request #275 from Arunpandian15/types_05
Merge pull request #277 from glimchb/openssl
Merge pull request #278 from sc108-lee/list_ns
Merge pull request #280 from glimchb/test
Merge pull request #281 from glimchb/opensslci
Merge pull request #282 from glimchb/wheel2
doc: Regenerate all documentation
Merge pull request #289 from glimchb/rpm
fabrics: Allow to change sysconfdir for hostnqn and hostid file
Merge pull request #294 from hreinecke/disc-ttrsvcid
Merge pull request #293 from igaw/fix-sysconfdir
Merge pull request #290 from glimchb/rpm
tree: Add support for default trsvcid for all controllers
fabrics: Correctly stringify default hostnqn and hostid paths
Merge pull request #297 from igaw/fix-stringify-hostnqn
doc: Provide SYSCONFDIR without quotes
Merge pull request #301 from Arunpandian15/doc_20
Merge pull request #299 from tbzatek/covscan-fixes-1
Merge pull request #302 from martin-gpy/update_log_level
Merge pull request #304 from tbzatek/init-subsystem-1
fabrics: Avoid out of bounds string chomping
Merge pull request #309 from tbzatek/init-subsystem-2
Merge pull request #311 from glimchb/ci
Merge pull request #313 from glimchb/badges
Merge pull request #314 from glimchb/codecov
Merge pull request #310 from igaw/nvme_chomp
Merge pull request #292 from tbzatek/errno-fixes-1
Merge pull request #306 from jeffreyalien/nvme-2.0-2
fabrics: Free old traddr in nvmf_add_ctrl
Merge pull request #308 from Arunpandian15/tests_23_03
Merge pull request #315 from igaw/fix-host-traddr-free
Merge pull request #307 from bjpaupor/lbstm
Merge pull request #318 from hreinecke/display-tree
ioctl: Remove attribute packed and alignedof for args structs
Merge pull request #325 from martin-belanger/fix-dim-tas
Merge pull request #321 from igaw/remove-packed-attribute
doc: Regenerate all documentation
Merge pull request #331 from jk-ozlabs/fixes
tree: Remove default port setting for TCP and RDMA ports
Merge pull request #333 from jk-ozlabs/fixes
Merge pull request #332 from linux-nvme/fix-discovery-tcp-port
doc: Regenerate all documentation
build: Add git ref to the binary
doc: Build ReST documantion as standalone target
ci: publish only sdist on PyPi
Merge pull request #339 from igaw/pypi-sdist-only
Merge pull request #343 from igaw/build-rst-doc
Merge pull request #337 from nekopsykose/scope-delimiter
Merge pull request #341 from glimchb/dep
Merge pull request #338 from TotalCaesar659/patch-1
Merge pull request #348 from linux-nvme/dependabot/github_actions/actions/upload-artifact-3
Merge pull request #347 from linux-nvme/dependabot/github_actions/actions/setup-python-3
Merge pull request #346 from linux-nvme/dependabot/github_actions/codecov/codecov-action-3
Merge pull request #345 from linux-nvme/dependabot/github_actions/actions/checkout-3
Merge pull request #342 from cions/fix-cxx11-narrowing
Merge pull request #344 from glimchb/doc
util: add function to retrieve version information
fabrics: Lower log level in __nvmf_add_ctrl
Merge pull request #351 from igaw/fix-log-level
fabrics: Remove double connection error logging
Merge pull request #352 from igaw/fix-log-level
Merge pull request #350 from glimchb/doc
Merge pull request #340 from igaw/add-git-version
Merge pull request #354 from eli-schwartz/uuid_h-name
Merge pull request #349 from glimchb/master
Merge pull request #357 from t-8ch/host_mem_buf-feature-length
Merge pull request #359 from glimchb/master
Merge pull request #360 from martin-gpy/nvme_config_segfault
licenses: Remove old dir from initial ccan import
log: Change license to LGPL-2.1-or-later
treewide: Add SPDX identifier
meson: Use SPDX identifier as license text
libnvme: Export nvme_ctrl_get_config
tree: Factor lookup code for controller
fabrics: Consider config from file when adding new controller
Merge pull request #358 from jeffreyalien/tp-4068-4084
Merge pull request #363 from igaw/apply-file-config
Merge pull request #362 from ankit-sam/master
fabrics: Introduce connection connect error mapping
Merge pull request #366 from sc108-lee/export-symbol
Merge pull request #365 from jeffreyalien/master
Merge pull request #353 from igaw/introduce-connection-error-mapping
Merge pull request #371 from CodeConstruct/optional-cxx
Merge pull request #370 from ankit-sam/master
Merge pull request #372 from CodeConstruct/32-bit
Merge pull request #76 from jk-ozlabs/mi
ioctl: Add inline to nvme_identify_cns_nsid and nvme_get_log_ana
Merge pull request #379 from igaw/fix-libnvme-mi-build
fabrics: restructrure nvmf_get_discovery_log
doc: move update instruction into template
doc: update Python binding documentation
README: add note about min kernel version
Merge pull request #380 from igaw/add-kernel-dep-note
ci: add python version to setup-python environment
Merge pull request #381 from igaw/add-version-to-setup-python
Merge pull request #376 from linux-nvme/dependabot/github_actions/actions/setup-python-4
Merge pull request #375 from hreinecke/subsys-ns-lookup
Merge pull request #383 from jeffreyalien/stc-control-bit-fix
Merge pull request #384 from CodeConstruct/api-types
Merge pull request #386 from CodeConstruct/mi
Merge pull request #387 from jeffreyalien/master
Merge pull request #388 from CodeConstruct/conf-host-endian-fix
Merge pull request #391 from CodeConstruct/mi
Merge pull request #389 from CodeConstruct/powerpc
Merge pull request #392 from CodeConstruct/mi+admin
doc: Add kernel-doc to header files
Merge pull request #390 from igaw/update-doc
test: Remove code dependency for mi test
Merge pull request #397 from igaw/fix-coderage-report
Merge pull request #398 from hreinecke/ctrl-auth
Merge pull request #399 from CodeConstruct/mi-kdoc
Merge pull request #402 from CodeConstruct/mi-kdoc
Merge pull request #400 from CodeConstruct/mi-test-ep-init
Merge pull request #403 from CodeConstruct/mi-cov-visibility
Merge pull request #396 from CodeConstruct/mi+scan
Merge pull request #405 from CodeConstruct/mi-h
doc: Workaround kenrel-doc code scanner
Merge pull request #406 from CodeConstruct/mi-ep-scan
Merge pull request #409 from sc108-lee/libsystemd
Merge branch 'mi-mctp-test' of https://github.com/CodeConstruct/libnvme
Merge pull request #410 from CodeConstruct/mi+mpr
Merge pull request #413 from CodeConstruct/not-cascading-style-sheets
Merge pull request #415 from CodeConstruct/mi-config
Merge pull request #418 from CodeConstruct/mi-retvals
Merge pull request #378 from igaw/fix-nvmf_get_discovery_log
nvme: Fix typos in header files
nvme: Whitespace cleanups in header files
nvme: More whitespace cleanup reported by checkpatch
Merge pull request #419 from igaw/spell-checking
Merge pull request #421 from martin-belanger/eflag-1
Merge pull request #422 from martin-belanger/eflag-2
build: Add workflow to create release from tags
Merge pull request #416 from CodeConstruct/kdoc-test
build: Add release automation script
Merge pull request #424 from igaw/add-release-script
Merge pull request #423 from martin-belanger/eflag-3
build: Explicitly check return values when using run_command
Merge pull request #427 from CodeConstruct/docs
Merge pull request #428 from igaw/fix-doc-build
Regenerate all documentation
Release v1.1-rc0
Merge pull request #432 from CodeConstruct/mi-timeout
workflow: Only publish proper releases to PyPI
build: Support release candidate version strings
build: Update release version rules
build: Update version before regenerating docs
Merge pull request #435 from martin-belanger/add-missing-attrs-to-python
Merge pull request #436 from CodeConstruct/mi-glp
Merge pull request #414 from sc108-lee/rpm
build: Add support to build against LibreSSL
Merge pull request #439 from igaw/add-libressl-support
ioctl: Honor rae in nvme_get_nsid_log
build: Drop -nostdinc for LibreSSL header checks
Merge pull request #441 from igaw/drop-nostdinc-libressl
Merge pull request #443 from martin-gpy/dump_output
Merge pull request #440 from igaw/fix-rae-users
Merge pull request #442 from ismaell/posix
Merge pull request #449 from tbzatek/errno-fixes-2
Merge pull request #450 from hreinecke/json-sync
Regenerate all documentation
Merge pull request #433 from igaw/build-support-pypi-rc-uploads
util: Add LINE_MAX define
Merge pull request #453 from igaw/add-line-max-define
build: Extend release script to support micro version releases
Merge pull request #457 from CodeConstruct/mi+admin
Merge pull request #458 from CodeConstruct/mi-mtu-conf
Merge pull request #460 from CodeConstruct/mpr
Merge pull request #461 from hreinecke/dhchap-templating.v2
Merge pull request #463 from martin-gpy/authkey_unavailable_segfault
doc: Install pre-compiled man pages to the correct path
Merge pull request #464 from igaw/fix-man-page-dir
docs: Relax regex in identifier match in list-man-pages.sh
Merge pull request #465 from martin-gpy/update_schema
Merge pull request #469 from CodeConstruct/action-warn-fix
Merge pull request #470 from linux-nvme/dependabot/github_actions/actions/checkout-3
Merge pull request #473 from martin-belanger/add-lsp-to-get-dlp4
Merge pull request #476 from martin-belanger/add-tp8010-defs
Merge pull request #480 from CodeConstruct/dev/mi-id-secondary
Merge pull request #481 from CodeConstruct/dev/mi-status
Merge pull request #479 from CodeConstruct/dev/ci-cross
Merge pull request #484 from CodeConstruct/dev/mi-symvers
Merge pull request #482 from CodeConstruct/dev/mi-firmware
Merge pull request #483 from martin-belanger/add-pleo-support
Merge pull request #486 from martin-belanger/add-pleo-support-py
Merge pull request #487 from martin-belanger/eliminate-empty-arguments
Merge pull request #488 from martin-belanger/fix-examples
json: Enforce correctly formatted JSON config files
json: Verify JSON config file starts with an array
Merge pull request #489 from drakedog2008/description
Merge pull request #493 from maurizio-lombardi/memleak
Merge pull request #491 from igaw/harden-json-parser
Merge pull request #499 from CodeConstruct/pr/log-page
fabrics: Use fallthrough statement
Merge pull request #494 from ikegami-t/set-feature-0dh
Merge pull request #501 from safl/mk
Merge pull request #502 from CodeConstruct/pr/mi-status
Merge pull request #503 from CodeConstruct/pr/mi-conf-err
Merge pull request #504 from CodeConstruct/pr/mi-conf-mtu
util: Do not expose fallthrough defines
Merge pull request #507 from igaw/private-fallhtrough-define
Merge pull request #508 from martin-gpy/add_is_persistent
util: Add simple UUID type
Merge pull request #497 from igaw/drop-libuuid
ioctl: Set log page offset for nvme_get_log_telemetry_host
mi: Set log page offset for nvme_get_log_telemetry_host
build: Update min version of meson to 0.48
Merge pull request #510 from igaw/pass-lpo-arg
Merge pull request #511 from igaw/build-min-verison-fix
fabrics: Duplicate strings when merging configs
Merge pull request #512 from igaw/fix-merge-config
types: Move enum nvme_data_tfr to types
Merge pull request #513 from igaw/move-def
build: Update version to v1.2
doc: Regenerate all docs for v1.2
build: Remove usused pkg-config template
Merge pull request #519 from igaw/pkg-config
ioctl: Move nvme_get_log_page() to ioctl.h
ioctl: Use nvme_get_log_page() in helpers
Merge pull request #515 from CodeConstruct/dev/mi-ctrl-list-nsid
Merge pull request #517 from drakedog2008/pr/bug-fix
Merge pull request #514 from CodeConstruct/dev/mi-quirks
Merge pull request #520 from CodeConstruct/pr/mi-status
Merge pull request #521 from martin-belanger/release-python-gil
Merge pull request #528 from jinliangw/master
Merge pull request #529 from CodeConstruct/pr/be
Merge pull request #531 from dankamongmen/dankamongmen/meson-0.50.0
doc: Generate rst documentation on the fly for readthedocs
Merge pull request #532 from igaw/generate-rst-readthedocs
build: Drop meson version test for 0.48
build: Allow static linking
Merge pull request #533 from igaw/static-build
build: Always set CONFIG_LIBSYSTEMD variable
Merge pull request #534 from igaw/cleanup-static-build
build: Run cross build test under qemu
Merge pull request #535 from igaw/run-cross-tests
build: Do not install libuuid in cross builds
build: Add s390x cross build target
Merge pull request #536 from igaw/run-cross-tests
build: Drop --werror for fallback builds
Merge pull request #538 from martin-belanger/fix-uuid-size
Merge pull request #540 from CodeConstruct/pr/mi-endpoint-close
Merge pull request #542 from CodeConstruct/dev/mi-libdbus
Merge pull request #546 from tbzatek/valgrind-fixes-1
Merge pull request #545 from jinliangw/rename_tmp
Merge pull request #548 from tbzatek/valgrind-fixes-2
Merge pull request #539 from jinliangw/master
Merge pull request #547 from jinliangw/in_band_get_log_fix
Merge pull request #551 from jinliangw/spsp_fix
Merge pull request #552 from birkelund/tp4146
nvme: Output zero padded hostid in resv-report command
Merge pull request #1761 from igaw/fix-recv-report-hostid
Merge pull request #554 from drakedog2008/pr/timeout
build: Remove unused uuid.wrap
build: Add D-Bus fallback
build: Add libdbus to build default build environment
Merge pull request #555 from igaw/build-libdbus-wrap
Merge pull request #558 from birkelund/tp4146
Merge pull request #1756 from birkelund/tp4146
build: Renaming and cleanups of workflow files
build: Add AppImage build workflows
Merge pull request #1769 from igaw/create-appimage
build: Set projects default to debug and prefix /usr/local
ioctl: Initialize all members in nvme_fdp_reclaim_unit-handle_status
util: Add ECONNECTREFUSED to enum nvme_connect_err
fabrics: Change string for NVMF_DISC_EFLAGS_NONE
fabrics: Add nqn to connect/disconnect log entry
Merge pull request #557 from igaw/misc-fabric-fixes
tree: Add unique discovery controller flag
Merge pull request #556 from igaw/add-unique-disc-ctrl
build: Set projects default to debug and prefix /usr/local
fabrics: Do not overwrite errno with return code
fabrics: Use endian helper when reading discovery log entries
fabrics: Add support for binary output
nvme: Ingore LOG_NOTICE level
fabrics: Update error message when connect attemp fails
fabrics: Set discovery KATO also for current disc crtl
fabrics: Do not attempt to reconnect to already connected ctrls
Merge pull request #1768 from igaw/misc-fabric-fixes
build: Update libnvme wrap
fabrics: Prefer unique disc ctrl over well known
ioctl: Initialize non-trivial designated initializers
Merge pull request #560 from igaw/fix-non-trivial-designeded-initializers
fabrics: Handle DUPRETINFO and EPCSD when doing discovery
fabrics: Do not disconnect unique disc ctrl on default
gitignore: Ignore clang build artifacts
gitignore: Ignore clang build artifacts
Merge pull request #1749 from ikegami-t/smart-log
Merge pull request #1770 from igaw/dst-wait
build: Upload latest AppImage
Merge pull request #1771 from igaw/appimage-release
build: The release workflow can't tag
Merge pull request #1772 from ikegami-t/util-print
Merge pull request #1765 from igaw/make-pdc-default
fabrics: Always sanitize discovery log entries
Merge pull request #1774 from ikegami-t/util-maint
tree: Add persistent_discovery_ctrl config flag
Merge pull request #1773 from linux-nvme/dependabot/github_actions/actions/upload-artifact-3
Merge pull request #564 from igaw/make-pdc-optional
Merge pull request #562 from igaw/sanitize-disc-log
build: Update libnvme wrap
fabrics: Make PDC behavior configurable
Merge pull request #1775 from igaw/make-pdc-optional
Merge pull request #565 from CodeConstruct/pr/563
Merge pull request #566 from birkelund/fix-event-timestamp
fabrics: Fix discovery controller filter function
fabrics: Fix already connected test
fabrics: Pass discovery ctrl to __discover()
Merge pull request #1777 from birkelund/tp4146-fixes
Merge pull request #1779 from ikegami-t/util-suffix
fabrics: Avoid buffer overrun in strchomp
Merge pull request #1780 from calebsander/fix/strip-spaces
Merge pull request #567 from igaw/fix-strchomp
Merge pull request #1778 from igaw/pdc-fixes
build: Update libnvme version dependency on release
Merge pull request #1781 from igaw/release-update-libnvme-version
Merge pull request #569 from ikegami-t/dst
build: Bump libnvme wrap
Merge pull request #1782 from ikegami-t/dst
build: Update version to v1.3
doc: Regenerate all docs for v1.3
build: Bump libnvme.wrap release v1.3
build: Update version to v2.3
doc: Regenerate all docs for v2.3
Merge pull request #570 from tbzatek/nss
nvme: Support effects-log for fabrics ctrl
Merge pull request #1794 from igaw/effects-log
build: Enable Azure Pipeline again
Merge pull request #1795 from igaw/add-blkttests
build: Also trigger Azure Pipeline for PR
util: Add crc32 implementation
build: Use prefixdir directly on sysconfdir
build: Use prefixdir directly on sysconfdir
build: Make json-c dependency optional again
build: Update dbus.wrap
Merge pull request #575 from igaw/update-dbus-wrap
fabrics: Do not ignore one char whitespace when string sanitizing
Merge pull request #576 from igaw/fix-strchomp-callers
Merge pull request #573 from igaw/fix-muon-build
Merge pull request #1799 from igaw/fix-muon-build
Merge pull request #1798 from igaw/drop-zlib
util: Reimplement suffix_si_parse
util: Update suffix_binary_parse API
Merge pull request #1790 from igaw/reimplement-suffix_si_parse
Merge pull request #1789 from ikegami-t/get-feature-status
util: Numbers without any suffix are also valid
Merge pull request #1802 from igaw/fix-suffix_binary_parse-regression
build: Update library paths for AppImage
Merge pull request #1809 from igaw/fix-appimage
Merge pull request #1805 from martin-belanger/fix-doc
Merge pull request #574 from igaw/make-json-c-optional
build: Set defaults for libdbus to disabled
build: Rename meson.yml to build.yml
build: Add muon build
Merge pull request #577 from igaw/build-updates
fabrics: No need to sanitize trsvcid and traddr
plugins/solidigm: Use struct json_object instead of typedef
plugins/solidigm: Use json_create_object wrapper
nvme-print: Move JSON printing function into a new file
nvme: Make json-c optional again
Merge pull request #1800 from igaw/make-json-c-optional
Merge pull request #1814 from jeffreyalien/latency-log
Merge pull request #1817 from sc108-lee/completion
Merge pull request #1819 from innogritkenny/master
doc: --storage-tag-check doesn't take any arguments
ioctl: Set file descriptor in nvme_get_log_page()
mi: Add nvme_mi_admin_get_log_page
build: Bump libnvme wrap
nvme: Use fprintf for error message logging in get_log()
nvme: Use chunked read in get_log()
build: Update CI build targets
build: Streamline workflows with nvme-cli
build: Add s390x cross build and enable cross tests
build: Add muon build target
build: Enable test in muon minimal build
nvme: Fix type in error message
nvme: Factor out parse telemetry log da element
nvme: Refactor get telemetry log page helper
nvme: Add rae argument to telemetry-log command
fabrics: Fix ordering for auto connect services
build: Initialize sysconfdir
build: Initialize sysconfdir
build: Upload all log files on failure
build: Upload all log files on failure
build: Add action build back
plugins/solidigm: Do not overwrite previously initialized variable
nvme: Use correct ABORT type for self abort test
plugins/inspur: Cast vendor specific smart log value
build: Add build action back
build: Update json-c wrap
build: Update OpenSSL wrap
build: Update libnvme wrap
doc: Update build script to use correct meson verbs
doc: Do not hardcode default location for config files
fabrics: Add define for DMI sysinfo
fabrics: Filter out invalid UUIDs from DMI
build: Update version to v1.4
doc: Regenerate all docs for v1.4
build: Bump libnvme to v1.4
build: Update version to v2.4
doc: Regenerate all docs for v2.4
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
tree: Fix argument check in nvme_bytes_to_lba
nvme-print: Use enum nvme_print_flags for nvme_show_id_ctrl
fabrics: Do not pass unsupported options to kernel
tree: Fix offset argument check in nvme_bytes_to_lba
build: Disable fallback on default
build: Update wrap mode defaults
build: Make json-c dependency lookup not fail
build: Extend summary section
build: Simple muon build configuration
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
doc: Update README
python: Update test data
ioctl: Explicitly initialize all members of struct nvme_ns_mgmt_args
build: Install missing s390 library
test: Add unit test for ctrl lookups
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
util: Add ignored error code
fabrics: Filter discovery ctrls out during application context check
tree: Ignore NULL address pointer for phy slot lookup
fabrics: Relax match on well known disc ctrl lookup
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
scripts: Move helper scripts to a central place
scripts: Call update doc script from top level dir
scripts: Sync release script
build: Move CI build steps into a scripts
scripts: Use spaces instead of tabs
util: Provide empty nvme_ipaddrs_eq for static builds
build: Use containers with matrix build
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: Update cross instruction and drop verbose test flag
build: Update version to v1.5
doc: Regenerate all docs for v1.5
build: Bump libnvme wrap
build: Update version to v2.5
doc: Regenerate all docs for v2.5
tree: Scan all subsystems
fabrics: Consider also all hosts settings for context match
ccan: Remove unused documentation
ccan: Add htable, strset and dependencies
nvme-print-stdout: Support subsys reachable from several hosts
build: Bump libnvme wrap
nvme-print-stdout: List only ctrls which are part of ns
tree: Add getter for subsystem iopolicy
build: Bump libnvme wrap
nvme-print: Fix show-topolocy for ctrls
nvme-print-stdout: Do not show non reachable ns in namespace topology
nvme-print: Show subsystem iopolicy
util: Set errno to 0 before strtol/stroul call
fabrics: Read the supported options lazy
fabrics: Do not pass disable_sqflow if not supported
mi: remove nsid from nvme_mi_admin_identify_secondary_ctrl_list()
build: Bump libnvme wrap
nvme: Update list secondary command
test: make all function static
test: fix lookup test case
build: use prebuild container images for cross builds
build: use debian container for release-python build
build: use container for coverage build
build: checkout repo in coverage build
build: avoid unused static inline function warning for clang
build: use prebuild containers for builds
build: fix AppImage yaml file
build: more style fixes for AppImage build
build: fix coverage report build
build: fix generation of coverage report
build: run tests before coverage tool
build: run tests before coverage tool
build: use latest container instead fixed version
build: use latest container instead fixed version
build: Bump libnvme wrap
test: use non deprecated API
nvme: fw_download use nvme_alloc only
nvme: append huge to nvme_{alloc|free} function
util: add cleanup function for generic memory allocations
nvme: introduce alloc helper with alignment support
nvme: allocate aligned payloads for all nvme commands
nvme: auto free nvme_dev resource
build: abort CI builds on first error
plugins/solidigm: use static log macro to calc bitmask
build: abort CI builds on first error
build: bump libnvme wrap
completion: add 'version' and 'help' to list
util: handle utf-8 thousend separators correctly
unit: add locale number test
build: Update version to v1.6
doc: Regenerate all docs for v1.6
build: bump libnvme wrap to v1.6
build: Update version to v2.6
doc: Regenerate all docs for v2.6
build: upload artifacts only for upstream repo
build: upload artifacts only for upstream repo
nvme: use block-count arg if provided
nvme: do not include meta data for PRACT=1 and MD=8
build: do not setup python
ioctl: use lsp arg in nvme_get_log_boot_partition
build: Bump libnvme wrap
fabrics: autoconnect: explicitly express module dependency
mailmap: only show contributer's name
plugins/ocp: update nvme_show_select_result call
nvme-print-json: remove obj_print helper
nvme-print-json: use human helper everywhere
doc: remove invalid hostkey info for --dhchap-secret
build: do not rebuild muon/samu every time
build: pass the linker argument via muon argument
build: remove the wrap feature dependency for muon
build: do not rebuild muon/samu every time
build: pass the linker argument via muon argument
doc: add additional build instructions
doc: mention build helper script for muon build instruction
nvme: return error code in get_persistent_event_log
nvme: auto cleanup buffers
nvme: auto cleanup filedescriptors
util/mem: move alloc helper to util section
nvme: replace libhugetlbfs with mmap and madvise
build: remove libhugetlbfs references
nvme: validate output format split status from flag return value
build: add CFLAGS back when building with muon
build: ignore external code for code coverage check
build: add checkpatch to catch style issues
build: ignore external code for code coverage check
build: add codecov configuration
build: add codecov configuration
tree: read all attributes from sysfs when available
tree: do not open blk device on default
build: construct path to config.h manually
build: update json-c and openssl wrap
build: Update version to v1.7
doc: Regenerate all docs for v1.7
build: update json-c wrap
build: Update libnvme wrap to v1.7
doc: fix lockdown document
build: Update version to v2.7
doc: Regenerate all docs for v2.7
build: use single string to name tests
build: use build container with python support
tree: do no free ns on error in nvme_ns_init
build: handle patch level versioning
build: Update version to v1.7.1
doc: Regenerate all docs for v1.7.1
build: fix release python tag match
build: checkout full repo for checkpatch
nvme-print-json: Revert field name changes
build: Update version to v2.7.1
doc: Regenerate all docs for v2.7.1
build: checkout full repo for checkpatch
json-schema: add keyring and tls_key details
tree: use logical block size for lba
libnvme: export nvme_dump_tree
json: dump the output to the user selected filedescriptor
nvme: allow to overwrite base sysfs path
nvme: allow to overwrite hostnqn and hostid
test: read and dump sysfs tar file
nbft: fixup include for libnvme
nbft: do not issue an error if ACPI tables are missing
tree: do not issue an error when subsys lookup fails during scanning
nvme-print-json: append array object in json_support_log
build: Update version to v1.8
doc: Regenerate all docs for v1.8
build: bump libnvme version
build: Update version to v2.8
doc: Regenerate all docs for v2.8
build: bump libnvme wrap
log: move nvme_{set|get}_debug to log.c
ioctl: export nvme_submit_passthru{64} as weak symbol
ioctl: remove incomplete debug logging infrastructure
build: bump libnvme wrap
nvme: remove unused declaration
nvme: update include for libnvme
logging: move logging code to a new file
logging: track log level globally
nvme: track verbose level
logging: output ioctl debugging info
nvme: do not issue warning when nvme_core module is not loaded
build: bump libnvme wrap
nvme: do not scan topology when mmaping registers
nvme: extend error message for ns scan failures
tree: fix lba_count size calculation
build: bump libnvme wrap
build: bump libnvme wrap
logging: fix error handling for ioctl passthru wrappers
fabrics: align identify command payload
Revert "logging: fix error handling for ioctl passthru wrappers"
Revert "ioctl: Return NVMe status in nvme_directive_send_id_endir()"
Revert "ioctl: add nvme_get_features_host_id2()"
Revert "ioctl: add nvme_get_features_timestamp2()"
Revert "ioctl: add nvme_set_features_iocs_profile2()"
Revert "ioctl: add nvme_set_features_host_id2()"
Revert "ioctl: add nvme_set_features_host_behavior2()"
Revert "ioctl: add nvme_set_features_timestamp2()"
Revert "ioctl: Update stub functions to match documentation"
Revert "ioctl: Update function documentation"
Revert "fabrics: retry discovery log page when DNR is not set"
Revert "ioctl: return EPROTO when an NVMe status occurred"
Revert "build(deps): bump AppImageCrafters/build-appimage from 1.3 to 2"
nvmf-connect: systemd hardening effort
tree: use strtou32 to read lba_size
nvme: identify primary ctrl do not accept nsid
nvmf-autoconnect: fix string encoding
build: Update version to v1.9
doc: Regenerate all docs for v1.9
build: bump libnvme wrap
build: Update version to v2.9
doc: Regenerate all docs for v2.9
plugins/spdk: drop the plugin
build: Update version to v2.9.1
doc: Regenerate all docs for v2.9.1
libnvme: sort export map
log: keep log level logic in one place
log: split log variables from root object
build: bump libnvme wrap
nvme: use cleanup helper for nvme_root_t objects
nvme: initialize default library logging
linux: default init cleanup variable
build: bump libnvme wrap
build: separate builds of libnvme and nvme-cli
doc: remove unused release variable
build: reorder release commits
doc: fix ocp format issues
build: reorder release commits
fabrics: skip namespace scan for fabric commands
nvme-print-stdout: refactor subsys config
linux: add nvme_revoke_tls_key
build: bump libnvme wrap
nvme: use stdout for exporting TLS keys
nvme: strip newline when parsing TLS key files
nvme: use cleanup helper for STREAM objects
fabrics: use cleanup helper for STREAM objects
nvme-rpmb: use cleanup helper for STREAM objects
nvme: use cleanup helper to close file descriptor
nvme: factor out import key function
nvme: return error code/message for TLS commands
nvme: add support to revoke TLS key
build: sort documentation files entries
doc: fix tls-key --keyfile shorthand
doc: add tls-key --revoke documentation
completion: add support for tls-key
doc: fix micron ocp telemetry log parse title
build: add documentation CI build
build: add documentation CI build
build: always CI build documentation
tree: preserve parsing order of a config file
json: filter out pcie transport
test: revamp sysfs tree dump test
test: add config dump test
test: add config-pcie-with-tcp-config test case
fabrics: extend hostnqn/hostid variable inject interface
tree: add helper to lookup hostnqn/hostid
test: add hostnqn lookup test
build: bump libnvme wrap
fabrics: use cleanup helper to free nvme root object
fabrics: extend already connected message
fabrics: use helper to lookup default hostnqn/hostid
fabrics: first read config before topology scanning
fabrics: refactore discover from json config
fabrics: connect all hosts in config.json
build: do not overwrite conf data from main meson.build
build: show git version used during configuration
build: add static build target
build: show git version used during configuration
build: fetch complete git history
build: use official download action
utils: add missing header
utils: cleanup includes in utils.h
utils: fix print formatting option
fabrics: use cleanup helper where possible
fabrics: do not report error when no modules are loaded when disconnecting
fabrics: check if json config is existing
fabrics: drop --disable-sqflow alias -d
fabrics: drop --quiet alias -S
test: return error code
nvme: extend help message when mmap regs fails
fabrics: do not leak nvme_ctrl_t object on connect
doc: Regenerate all docs for v1.10
Release v1.10
build: bump libnvme wrap
doc: Regenerate all docs for v2.10
Release v2.10
docs: rename ocp-unsupported-req-log file
build: add install step to doc CI build
build: add install step to doc CI build
doc: Regenerate all docs for v2.10.1
Release v2.10.1
build: fix libnvme dependency
doc: Regenerate all docs for v2.10.2
Release v2.10.2
build: use linux-nvme/ci-containers
build: use linux-nvme/ci-containers
linux: reorder variable declarations
linux: use ssize_t as return type for nvme_identity_len
linux: only return the description of a key
test: make config-diff more flexible to use
test: add test case for importing/exporting PSKs
linux: add import/export function for TLS pre-shared keys
test: extend psk to test new 'versioned' API
tree: add getter/setters for TLS PSK
json: move keystore operations out of the JSON parser
test: add pre-shared key json tests
tree: move dhchap and tls sysfs parser into separate functions
tree: read tls_configured_key and tls_keyring from sysfs
linux: export keys to config
linux: handle key import correctly
fabrics: rename first argument for argument macros
fabrics: use hex numbers when generating command line options
fabrics: add ctrl connect interface
fabrics: fix map error level in __nvmf_add_ctrl
util: added error code for ENOKEY
tree: do no export tls keys when not provided by user
json: do not escape strings when printing the configuration
build: bump libnvme wrap
nvme: use unsigned char for hmac and identity
fabrics: add support to connect to accept a configuration
fabrics: add support to connect to accept a PSK command line
docs: update TLS options
nvmf-keys: add udev rule to import tls keys
nvme: export tls keys honoring version and hmac
nvme: set file permission for keyfile to owner only
nvme: rename identity to version
nvme: add support to add derive TLS PSK to keyfile
docs: update gen-tls-key arguments
nvme: return correct error code in append_keyfile
nvme: add support to append TLS PSK to keyfile for check-tls-key
docs: update check-tls-key arguments
doc: Regenerate all docs for v1.11
Release v1.11
build: bump libnvme wrap
scripts: handle libnvme version update correctly
doc: Regenerate all docs for v2.11
Release v2.11
linux: fix derive_psk_digest OpenSSL 1.1 version
linux: do not return w/o OpenSSL support enabled
docs: add howto to setup TLS connections
linux: do not do any keyring ops when no key is provided
fabrics: do not attempt to import keys if tls is not enabled
doc: Regenerate all docs for v1.11.1
Release v1.11.1
test/mock: pass thru unknown ioctls
tests: do not unconditionally depend on dlsym
build: bump libnvme wrap
doc: remove TLS documentation
ioctl: fix io_uring whitespace damages
build: bump wraps
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: add thank you bot
build: add github token to comment step
build: remove thank you bot
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
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()"
examples: fix time stamp prefix printf format string
pyproject.toml: allow newer meson version
build: update min meson dependency
build: request c++ compiler for host and build machine
build: drop support for openssl 1
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
build: do not include config.h globally
nvme: use correct parser type for nvmsetid and endgid option
build: ignore PREFER_DEFINED_ATTRIBUTE_MACRO
doc: Regenerate all docs for v1.12
Release v1.12
build: bump libnvme wrap
doc: Regenerate all docs for v2.12
Release v2.12
build: fix python release workflows
build: enable python test release and fix release tag
build: use correct syntax to fetch container
build: use v1 branch pypi publish action
build: use trusted publisher authentication
pyproject: add description metadata
build: set permissions for release-python
build: disable twine metadata check
build: update packaging for twine
build: install pip
build: use pipx for installing packaging
build: install packaging globally
build: install packaging in upload containers
gitignore: ignore .build-tools
src: update include directive
mailmap: show only contributers name
Revert "nvme-print-json: display only verbose output"
ioctl: return status code when using liburing
build: bump libnvme wrap
build: bump libnvme wrap
fabrics: retry connect command on EINTR
build: fix python upload workflows
build: update gh-action-pypi-publish dependency
build: use the correct version syntax for actions
build: set python version to 3.10
doc: Regenerate all docs for v1.13
Release v1.13
build: bump libnvme wrap
doc: Regenerate all docs for v2.13
Release v2.13
build: allow to specify tag for workflow_dispatch
build: upload unique pypi test versions
build: add cleanup task for pypi test uploads
build: fix test pypi cleanup task
build: cleanup python test pypi upload
build: split 'dev' postfix from version string
biuld: patch the meson.build for test pypi upload
src: introduce unreleased export section
scripts: update UNRELEASED export map on release
build: update readthedocs commands
build: use newer build container for readthedocs
mi: fix unrleased section name
build: run nightly build only for linux-nvme
Revert "fabrics: retry connect command on EINTR"
build: bump libnvme wrap
util: add SIGINT handler
nvme: retry commands on EAGAIN and EINTR
nvme: check errno not return value
fabrics: refactor error propagation in nvmf_connect
build: make 'clean' target an alias for 'purge'
build: always use meson commands
build: fix the static build
build: make 'clean' target an alias for 'purge'
build: disable netdb test for static builds
doc: Regenerate all docs for v1.14
Release v1.14
build: bump libnvme wrap
doc: Regenerate all docs for v2.14
Release v2.14
ioctl: only use io_uring for char devices
doc: fix return value description for nvme_scan_topology
ioctl: introduce force xfer length configuration knob
nvme: add command line argument to disable retries
doc: add note about huge TLB when using fw-download
build: disable liburing support per default
tree: filter tree after scan has completed
nvme: extend filter to match device name
nvme-print: suppress output when no ctrl is present for list-subsys
tree: free ctrl attributes when (re)configure ctrl
Revert "linux: TLS PSK derivation fixes"
json: do not leak port_obj for PCI devices
tree: always set the host key
doc: Regenerate all docs for v1.15
Release v1.15
build: bump libnvme wrap
doc: Regenerate all docs for v2.15
Release v2.15
udev: rename 71-nvme-hpe.rules to 71-nvmf-hpe.rules
build: fix static build
build: add valgrind test option to build script
build: run tests with valgrind for default builds
build: add valgrind test option to build script
build: run tests with valgrind for default builds
build: replace AppImage with static build binary
tree: do not try to strdup NULL pointer
build: bump libnvme wrap
linux: use EVP_PKEY_CTX_add1_hkdf_info only once in compat function
test: add hkdf_add1 test
build: bump libnvme wrap
build: don't mark build fail when coverage fails
build: don't mark build fail when coverage fails
CI: add expect package for blktests
doc/nvme-write: fix short hand argument for --block-size
test/mi: initialize struct args
tree: preserve dhchap_key to during scan
doc: Regenerate all docs for v1.16
Release v1.16
build: bump libnvme wrap
doc: Regenerate all docs for v2.16
Release v2.16
lib: import libnvme sources
libnvme: hookup the library into the build
build: add native compiler to cross compiler config
build: disable force-fallback-for libnvme
map: merge all symbols into 2.0 section
ioctl: remove deprecated functions
src: merge libnvme-mi into libnvme
api-types: replace nvme_root_t with struct nvme_global_ctx
src: introduce transport handle abstraction
api-types: remove unused fd members
linux: add nvme_transport_handle_get_fd
linux: add nvme_transport_handle_get_name
linux: add nvme_transport_handle_is_{blk|char}dev
mi: replace nvme_mi_ctrl_t with struct nvme_transport_handle
linux: add MI support to nvme_{open|close}
linux: add nvme_transport_handle_is_{direct|mi}
ioctl: add support for MI passthru
ioctl: add alignment and length check to nvme_fw_download
mi: replace dedicated MI API with generic one
nvme-cli: update to libnvme API changes
rrc: return error codes directly
nvme-cli: update error handling
ioctl: add nvme_identify_partial
mi: remove nvme_mi_admin_identify{_partial}
ioctl: remove struct args backwards compatibility
src: rename struct command *cmd to acmd
ioctl: rework nvme_identify commands
src: rework nvme_identify commands
ioctl: rework nvme_get_log commands
ioctl: add nvme_init_log_lpo helper
ioctl: rework nvme_set_features commands
ioctl: rework nvme_get_features commands
ioctl: rework nvme_format_nvm command
ioctl: rework nvme_ns_mgmt commands
ioctl: rework nvme_ns_attach commands
ioctl: rework nvme_fw_download command
ioctl: rework nvme_fw_commit command
ioctl: rework nvme_security_send command
ioctl: rework nvme_security_receive command
ioctl: rework nvme_get_lba_status command
ioctl: rework nvme_directive_send commands
src: rework nvme_directive_send command
ioctl: rework nvme_directive_recv commands
src: rework nvme_directive_recv command
ioctl: rework nvme_capacity_mgmt commands
src: rework nvme_capacity_mgmt command
ioctl: rework nvme_lockdown command
ioctl: rework nvme_set_property command
ioctl: rework nvme_get_property command
ioctl: rework nvme_sanitize_nvm command
ioctl: rework nvme_dev_self_test command
ioctl: rework nvme_virtual_mgmt command
ioctl: rework nvme_resv_acquire command
ioctl: rework nvme_resv_register command
ioctl: rework nvme_resv_release command
ioctl: rework nvme_resv_report command
ioctl: rework nvme_io_mgmt_recv commands
ioctl: rework nvme_io_mgmt_send commands
ioctl: rework nvme_zns_mgmt_send commands
ioctl: rework nvme_zns_mgmt_recv commands
ioctl: rework nvme_zns_append commands
ioctl: rework nvme_dim_send command
ioctl: rework nvme_lm_cqd command
ioctl: rework nvme_lm_track_send command
ioctl: rework nvme_lm_migration_send command
ioctl: rework nvme_lm_migration_recv command
ioctl: rework nvme_lm_set_features_data_queue command
ioctl: rework nvme_lm_get_features_data_queue command
ioctl: rework nvme_io commands
ioctl: rework nvme_copy command
ioctl: remove unused enum features
src: merge api-types.h content into types.h
plugins: replace nvme_scan with nvme_scan_topology
libnvme: remove unused project config files
build: switch back to 80 char checkpatch config
build: move libnvme github workflows to top dir
build: mark repo as safe for git
libnvme/mi: always initialize timeout_save
plugins/sandisk: update calling arguments
build: avoid breaking cross builds with OpenSSL enabled
nvme: use io passthru for write_uncor
ioctl: fix dms command
fabrics: interpret return code from nvme_create_ctrl correctly
nvme: dsm: make context atttribute optional again
libnvme: use 64-bit version struct nvme_passtru_cmd everywhere
ioctl: add hooks into submission path
src: drop result argument from submit API
ioctl: fix return code handling in uring code
nvme: add fallback support for block vs char device to dsm command
nvme: add fallback support for block vs char device to flush command
nvme: factor out get_pi_info from submit_io
nvme: do not use initialize PI tags unconditionally
doc: add how to use the CI containers to build
ioctl: use dummy passthru command
nvme: handle absence of PI support in IO commands
nvme: add fallback support for block vs char device to verify command
build: merge libnvme build into the nvme-cli build scripts
util: move nvme_strerror to libraray
fabrics: move __discover to the library
fabrics: move json config based discovery to library
fabrics: move connect config json code to the library
fabrics: move nbft code to the library
fabrics: move host_traddr and host_iface to ctrl
fabrics: add context to common fabrics arg parser
fabrics: move discovery config file code to library
fabrics: move final discovery code to library
fabrics: generalize nvmf_discovery_ctx to nvmf_context
fabrics: move connect logic to library
fabrics: remove duplicate arguments from discover/connect
fabrics: add documentation to the new discovery/connnect API
doc: update readme on libnvme dependency
fabrics: correctly set host traddr and iface
fabrics: set hostnqn and hostid for fabrics context
fabrics: set crypto info to fabrics context
linux: filter out key errors when looking up identity
fabrics: add missing default context assignment
nvme: init result_def in get_feature_id_changed
build: move pyproject.toml to root dir
build: update python workflow
build: handle PyPi versioning scheme for library versioning
build: merge all symbols into 2.0 sections
build: change linker script to use the .ld extension
test: print command string
tree: remove nvme_update_config
fabrics: reorder and align fabric_args assigments
build: use proper shell variable expansion
build: replace the version patching with mesonpy approach
build: commit CI-generated version so sdist gets correct metadata
build: add sdist build step back
build: fix yaml syntax for libnvme release python workflow
fabrics: open transport handle for discovery controller
fabrics: move config modify code to library
tree: remove unused default_host variable
tree: add nvme_host_get
tree: separate create host code from nvme_lookup_host
tree: add nvme_subsystem_get
tree: make nvme_lookup_ctrl and nvme_ctrl_find private
test: don't fail in ioctl mock for unknown ioctl
tree: add nvme_global_ctx to struct nvme_ns and struct nvme_ctrl
tree: get global context directly
test: add global context discovery test case
linux: add global context as first argument to crypto API
nbft: add global context as first argument to nbft API
log: remove deprecated default global context functions
build: remove obsolete 'nvme' ignore
docs: update readme to include more badges
build: replace qus with setup-qemu-action
linux: add possibility to disable IOCTL probing
fabrics: rename fabrics_args to nvmf_args
nvme: rename nvme_config to nvme_args
fabrics: add global default command line arguments
nvme: replace OPT_ARGS with NVME_ARGS
tree: cleanup paths when freeing namespace
build: add coverity workflow
build: coverity: use curl and build in debian.python
build: remove duplicate workflows
docs: update readthedocs setup
build: fix readthedocs html install path
build: do not fail build job on 'negative' coverage report
build: use our own containers for RTD
build: drop the 'os' in RTD build
build: rtd: use build.jobs instead of build.commands
build: rtd: don't specify format and install asciidoc dependency
build: rtd: only build html docs for nvme-cli
build: rtd: reduce bulid dependency
build: rtd: add sphinx dependency
build: rtd: install asciidoc via pip
build: rtd: fix pip install step
build: rtd: fix html lookup path in copy step
json: update nvme_dump_config to a file descriptor
fabrics: do no try do disconnect invalid ctrl
build: disable coverage reports
build: pin all GitHub Actions to SHA of latest release version
build: remove unused libnvme codecov configuration
build: remove unused scripts from libnvme
build: merge update-docs script
src: use standard lookup for libnvme include
ioctl: use correct defines for set_features field encode
test: add header include test
libnvme: include main headers where possible
libnvme: drop a few unused headers
nvme: use nvme_ns_rescan instead open coding
ioctl: make IOCTL defines private
ioctl: always define the passthru data structs
cmds: move command function to their own header
build: sort install_headers alphabetically
cmds: move nvme commands to cmds header
linux: reduce the number of includes
cmds: move nvme cmds from util to cmds.h or types.h
tree: reduce the number of includes
nbft: include nvme/types.h instead nvme/util.h
crc32: add spdx license tag
base64: update spdx tag
log: drop the tree.h header include
mi: drop the types.h include
lib: move library definition into new headers
util: move functions into private header
log: move logging definition to lib.h
tree: move nvme_ns_*_transport_handle to private header
mi: replace nvme_mi_*global_context with nvme_*_global_context
mi: make nvme_mi_admin_admin_passthru private
lib-types: move struct nvme_passthrue_cmd up
fabrics: rename nvme_free_uri to nvmf_free_uri
cmds: avoid possible infinite loop
cmds: free id_ctrl after use in nvme_get_telemetry_max
mi: fix nvme_mi_create_global_ctx removal
nvme: remove -t as alias for --timeout
build: only try to upload if it's linux-nvme/nvme-cli repo
build: github workflow cleanups
build: fix syntax error in upload workflow
build: update workflow name
build: fix upload condition
build: replace debian.python with debian container
build: disable libraries for static build
build: no need to update libnvme subproject
build: update release version string acceptance test
doc: Regenerate all docs for v3.0-a.1
build: add Fedora and Tubmleweed to the build matrix
mi: verify length of data before reading header
misc: initialize memory before using in tests
build: update checkout action versioning
build: use distro CFLAGS
tree: gracefully handle empty dirs
tree: fix spdx tag for tree.py test
util: update spdx license fro sighdl
docs: update license for rtd yaml files
example: update license for discovery-loop.py
licenses: add missing spdx tags
licenses: consolidate license texts
doc: add security info
build: re-enable docs build update-docs.sh
build: drop libnvme wrap update in release.sh
doc: Regenerate all docs for v3.0-a.2
Release v3.0-a.2
build: commit all doc updates when releasing
tree: handle error when trying to get transport handle
tree: propagate error code for nvme_scan_ctrl
test: ignore ENOENT and EACCES from nvme_scan_topology
tree: remove nvme_scan
filters: return error code
doc: prefix local mandir and htmldir paths
doc: Regenerate all docs for v3.0-a.3
Release v3.0-a.3
build: ignore patch version updates for actions
fabrics: sanitize FC traddr
src: order includes per common recommendation
build: upload versioned binary to SFTP server
build: replace ftp-deployer with inline sshpass+sftp
build: add SSH options to sftp
build: switch to plain sftp without sshpass
nvme: help compiler to figure out figuring init of variables
tree: always initialize ns variable
util/types: include missing header for time_t
no-json: update function arguments
nbft: move nbft_file_entry to nbft header
fabrics: move nvmf_default_config to tree
linux: move the hostid/hostnqn function
lib: remove the unreleased linker section
libnvme: make fabrics optional
build: use meson static build to test fabrics=disabled
build: use cflags array instead string
linux: fix typos in documentation
nvme: move non-nvme_init_* helper functions to nvme-cli
cmds: remove nvme_fw_download_seq
cmds: group all nvme_init_* functions
cmds: move nvme_init_* implementations to header
nvme-cmds: move nvme_ns_detach/attach_ctrl to nvme-cli
uring: move io_uring code to new file
cmds: move nvme_get_log and related code to cmds.c
cmds: move nvme_get_log_atomic down
lib: update function names to follow pattern
build: replace ncipollo/release-action with gh release
docs: update reamde badges
build: add dedicated docs target
build: set workspace dir for codecov
build: add windows build workflow
examples: include select.h header
fabrics: dump config on stdout
fabrics: do not print device name when dumping config
linux: fix return value in nvme_lookup_key
build: resort libnvme linker scripts
linux: add nvme_create_raw_secret
fabris: add nvmf_context_free
fabrics: allow tls key to be a pin
nvme-print-json: do not enable verbose mode on default
fabrics: use uuid from hostnqn for hostid
docs: move global/fabrics options into separate files
tests: don't enforce NS management support for local testing
tests: skip tests which rely on namespace management
tests: add native TAP protocol support
tests: ensure TAP output and test output separate
tests: update documentation
CI: update to nightly tests to use meson test framework
build: honor the users input for libdbus option
libnvme: introduce libnvme prefix for library API
mi: move types into mi-types.h
mi: use libnvme prefix for mi API
build: reorder nightly build configuration
tests/tap_runner: intercept stderr
CI: upload meson logs from nightly run
tests: fix config lookup path
tests: fix tap_runner to route diagnostic output to stderr
tests: move diagnostic output behind debug flag
CI: update the upload path for nightly build
lib: avoid kernel logging cmd does not match nsid
tests: use common exec_cmd helper
tests: log all cmds input/output
CI: enable debug logging level for nightly run
tests: don't run Python tests in parallel
nvme: expose tls mode in use
fabrics: issue a warning on invalid traddr format
tests: modernize subprocess calls
libnvme: rename nvmf_ API prefix to libnvmf_
cleanup: rename __cleanup__ to __cleanup
cleanup: rename _cleanup_free_ to __cleanup_free
cleanup: rename _cleanup_file_ to __cleanup_file
cleanup: rename _cleanup_dir_ to __cleanup_dir
cleanup: rename _cleanup_fd_ to __cleanup_fd
cleanup: rename _cleanup_addrinfo_ to __cleanup_addrinfo
cleanup: rename _cleanup_uri_ to __cleanup_uri
cleanup: rename _cleanup_huge_ to __cleanup_huge
cleanup: rename _cleanup_nvme_ctrl_ to __cleanup_nvme_ctrl
cleanup: rename _cleanup_nvme_global_ctx_ to __cleanup_nvme_global_ctx
cleanup: rename _cleanup_nvmf_context_ to __cleanup_nvmf_context
cleanup: rename _cleanup_nvme_transport_handle_ to __cleanup_nvme_transport_handle
cleanup: rename _cleanup_dirents_ to __cleanup_dirents
cleanup: rename _cleanup_evp_mac_ctx_ to __cleanup_evp_mac_ctx
cleanup: rename _cleanup_evp_mac_ to __cleanup_evp_mac
cleanup: rename _cleanup_evp_pkey_ctx_ to __cleanup_evp_pkey_ctx
cleanup: rename _cleanup_tokener_ to __cleanup_tokener
zns: fix check for valid global context
compiler-attributes: rename header to match pattern
cleanup: move optional cleanups to C files
cleanup: move POSIX API cleanup helpers into a separate file
uring: move no-uring implementation into C file
private: make fabrics parts optional in global context
mi: make management interface support optional
private: remove unused ioctl.h include
lib: define LIBNVME_LOG_* levels to replace syslog.h LOG_* constants
lib: add LIBNVME_ prefix to DEFAULT_LOGLEVEL
libnvme: add nvme- prefix to types.h and cmds.h
endian: provide endian helpers when missing
types: provide base types when missing
CI: select ucrt64 compiler
generate-accessors: extend struct annotation with default mode qualifier
build: make json-c dependent on fabrics
tree: use traddr_is_hostname from fabrics
fabrics: move libnvmf_context to private-fabrics header
fabrics: don't return config from merge_config
libnvme: update Python binding to use libnvmf_context
libnvme: embed libnvme_fabrics_config in libnvmf_context
fabrics: replace fabrics options with fabrics context
fabrics: move connect/disconnect to fabrics API
fabrics: add _id postfix to TLS keys in libnvme_fabrics_options
fabrics: add missing common arguments to nvmf_args
fabrics: use context at controller creation time
private: replace typedefs with direct definitions
generate-accessors: output added list with correct formatting
fabrics: retire libnvme_fabrics_config from public API
fabrics: add tls_configured_key to merge/update logic
private-fabrics: fix spelling in comment
generate-accessors: add char double-pointer accessor support
fabrics: move URI data struct to private API
build: drop windows guard on no-json
build: handle libdbus and liburing dependencies generically
nbft: move spec types into separate header
nbft: use libnbft_ prefix for library types
libnvme: make free functions null-pointer safe
python: remove redundant null check
docs: add new libnvme headers
doc: Regenerate all docs for v3.0-a.4
Release v3.0-a.4
generate-accessors: fix invalid kdoc banners
doc: Regenerate all docs for v3.0-a.5
Release v3.0-a.5
fabrics: do not re-initialize nvmf_args
private: add indentation to !accessor commands
python: add missing define for handwritten getter
nvme: initialize default timeout for format command
nvme: enable support for --no-ioclt-probing for open_exclusive
nvme-print: fix traddr transformation for ave discovery log
nvme: add O_TRUNC when opening output files for read commands
feat: add support for Host Behavior Support
tests: use feat command to handle host behavior
tests: fix ms byte decoding
tests: split copy test into subtests
tests: add mcl/mssrl/msrc limit checks to nvme_copy_test
tests: only setup cdfe for requested descriptor version
tests: check and format namespace for copy test
tests: skip 16-bit guard copy tests when namespace is in 64-bit guard PI mode
tests: handle PI and MS settings
tests: skip write-uncor test when not supported
build: generate coverage report for nightly tests
build: switch to gcovr
CI: install gcovr for nightly build run
CI: tune codecov setup for nightly builds
CI: set codecov slug
CI: set the slug environment variable explicitly
CI: explicitly set project metadata for codecov
build: re-sort entries in linker scripts
mem: move memory allocator helpers
nvme: replace nvme_(re)alloc with libnvme_(re)alloc
mem: move alloc_huge and free_huge to library
mem: introduce libnvme_free
table: add fallback reallocarray implemenation
nvme: replace posix_memalign with libnvme_alloc
CI: upload nightly coverage via GH action
CI: update download-artifact version for nightly-tests
log: open-code dprintf
linux: replace getline with fgets
nvme-print-stdout: rework effects log output
nvme-models: replace getline with fgets for portability
nvme-models: change id to device name
nvme-print: print product name if available
libnvme-mi: move linker symbols into separate script
nvme: remove MI feature support when disabled
CI: use kubevirt artifacts for nightly codecov upload
ioctl: defer ioctl version probing until first use
CI: fix missing coverage data in codecov uploads
nvme-models: suppress missing sysfs entry messages
CI: disable Codecov push trigger
nvme-cmds: sort commands according the spec order
nvme-cmds: fix typos in documentation
nvme-cmds: split header according to spec grouping
nvme-types: move fabrics definitions into separate header
nvme-types: move zns definitions into separate header
nvme-types: move nvm definitions into separate header
nvme-types: move mi definitions into separate header
nvme-types: move base definitions into separate header
nvme: add support for global options before command
nvme: use nvme_args directly to check flag
plugins/netapp: use nvme_args directly to check flag
unit: extend command line test
plugins: rename -v/-o short options
doc: update -o short option documentation
plugins/virtium: use snprintf instead strncpy
doc: update global options placement
doc: reformat synopsis to avoid overlong line
nvme-types: add spec reference to DOC section
nvme-types: add missing documentation
nvme-types: add or update missing types and accessors
nvme-types-mi: remove backwards compat defines
nvme-types-mi: update reserved field name
nvme-types-base: drop depricated mask
nvme-types-base: rename notification mask features
nvme-types-nbft: rename nbft type header
nvme-types-nbft: update to v1.3
libnvme: consolidate kdoc return text
libnvme-mi: use callbacks for mi submit logging
tests: harden JSON parsing
build: install libnvme as versioned libnvme3 artifacts
build: handle should_faild deprecation
nvme-print-json: split fabrics Address into fields
ioctl: improve async passthru API
test: add async test case
docs: update repors section in REAMDE
nvme-types-base: add padding to nvme_lm_nvme_controller_state_data union
ioctl-linux: do no use uring for MI
no-uring: check if handle is valid
ioctl: rename command passthru API
build: enable liburing build target and test
ioctl: rename passthru functions
lib: fix overlong lines
linux: move crypto APIs in new header
lib: remove log arguments from global context constructor
scan: refactor filter API
tree: unexport libnvme_host_get_ids
fabrics: move hostnqn/hostid code to fabrics files
tree-linux: move all sysfs-related code to this file
build: add coverity scan back
build: replace wget with curl
build: undo clang-analyzer job renaming
doc: Regenerate all docs for v3.0-b.1
Release v3.0-b.1
build: install headers into versioned subdirectory
build: install man/html pages into versioned subdirectory
doc: Regenerate all docs for v3.0-b.2
Release v3.0-b.2
libnvme-wrap: drop unused code
plugins: add newline after json output
nvme-print: add nvme_show_verbose_* helpder
nvme-print-json: only output json if none empty
nvme-print-json: centralize init/finish
nvme: do not print status message on default
nvme-print: use status variable instead of errno
libnvme: rename Python binding to libnvme3
doc: Regenerate all docs for v3.0-b.3
Release v3.0-b.3
pyproject: fix toml syntax
plugins/ocp: fix casting from pointers with different size
plugins/solidigm: update printf formatting for 64bit types
libnvme: replace environment options with explicit APIs
libnvme/config: clarify internal documentation
doc: update the URL for the latest binary for testing
fabrics: make libnvmf_host_get_ids a public API
fabrics: check arguments in libnvmf_host_get_ids
lib: add global context setters for hostnqn/hostid
lib: add global context to libnvme_read_hostnqn/hostid
libnvme/test: replace env configuration with explicit
libnvme/examples: set default hostnqn/hostid on global ctx
libnvme/fabrics: decouple hostnqn pointer lifetime from fctx
libnvme/fabrics: do not look up hostnqn/hostid implicitly
libnvme/tree: do not set hostsymname in libnvme_get_host
libnvme/tree: rename nvme_alloc_subsystem
libnvme/tree: only do a lookup in libnvme_lookup_host
libnvme/tree: only do a lookup in libnvme_lookup_subystem
libnvme/tree: only do a lookup in libnvme_lookup_ctrl
fabrics: create handle for existing discovery controller
nvme-print: handle NULL phy slot pointer
David Santamaría Rogado (1):
udev: don't spread variables through all nodes
Dedow, Karl (1):
plugins/ocp: Fix whitespace and style issues
Dennis Maisenbacher (67):
tests: Use raw string for compiling regex
tests: fix nvme_attach_detach_ns_test
tests: Fix nvme_copy_test python traceback fails
tests: Fixup nvme_create_max_ns_test
tests: Improve nvme_ctrl_reset_test
tests: Adjust ncap and nsze for nvme_format_test
tests: Fix nvme_get_features_test
tests: Use correct flag in vendor specific id-ctrl
tests: Fix nvme_smart_log_test
tests: Add feature check to nvme_compare_test
tests: Fix nvme_get_lba_status_test and nvme_lba_status_log_test
tests: Create default ns on tearDown
CI: Add workflow for running tests on real nvme device
build: Add token for coverage test
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
CI: move to self-hosted GitHub ARC infrastructure
test: add missing tests for identify functions
test: add tests for log functions
ioctl: fix nvme_lm_set_features_ctrl_data_queue
test: add missing tests for features functions
test: add tests for zns functions
test: add tests for miscellaneous ioctl functions
CI: adopt kubevirt-action for self-hosted ARC
ioctl: fix nvme_directive_recv_stream_status
test: move _cleanup_free_ to util.h
test: add tests for miscellaneous ioctl functions
nvme: fix timeout ioctl arguments
CI: allow manual workflow dispatches to run
CI: add nightly blktests
CI: improve nightly blktests
CI: checkout commit that triggered the workflow
CI: continue independent test cases on previous failure
nvme: nvme_get_log use nvme_passthru_cmd directly
src: rework nvme_set_features commands
src: rework nvme_get_features commands
src: rework nvme_format_nvm command
src: rework nvme_ns_mgmt commands
src: rework nvme_ns_attach commands
src: rework nvme_fw_download commands
src: rework nvme_resv_release commands
src: rework nvme_resv_report commands
src: rework nvme_io_mgmt_recv commands
src: rework nvme_io_mgmt_send commands
python: adjust README to use global_ctx
python: update error handling for bindings
nvme: refactor PI tagging for uniform behavior
CI: use podman as container runtime
CI: fix podman device permissions
CI: Add host_devices list to kubevirt-action
nvme: return a status from get_pif_sts()
nvme: introduce Qualified Protection Information Format (QPIF)
tests: add Qualified Protection Information Format (QPIF) testcase
libnvme: add CIU and CIRN to Identify Controller data structure
libnvme: fix NVME_SC_EXCEEDS_MAX_NS_SANITIZE status code value
libnvme: remove duplicate NVME_SC_FEAT_IOCS_COMBINATION_REJECTED
Dmitry Sherstoboev (4):
plugins/lm: Pass numd option to nvme_lm_migration_recv
types: Fix Live Migration SEQIND Shift and Mask
plugins/lm: Refine Sequence Indicator description and macro usage
types: Change LM CDQ sz argument from u8 to u32.
Dmitry V. Levin (1):
udev: fix warning reported by udevadm verify
Eli Schwartz (2):
fix broken includes for the uuid.h header
reduce the exposed interface for libnvme_dep
Fahim Hassan (8):
nvme: fix uninitialized variable in get_feature_id_changed()
nvme: fix uninitialized variable in passthru()
libnvme: fix uninitialized argument in libnvme_get_lba_status_log()
nvme: fix inverted null check in is_ns_mgmt_support()
nvme: fix potential use of uninitialized flags in passthru()
plugins/sed: fix null pointer dereference in sedopal_print_locking_features()
nvme: fix null pointer dereference in get_log_offset()
libnvme: validate context in libnvme_rescan_ctrl()
Felix Yan (2):
doc: Fix short option name for cfg-file
doc: Fix config-schema.json's URL
Francis Pravin (59):
nvme: remove double free in persistent-event-log
nvme: fix fw-commit MUD result message
types: add enum for Protection Information Format
nvme-print-stdout: fix to print the log line by line
nvme-print-stdout: print MEM bit of CTRATT field
types: add new filed added in TP4141a
nvme-print-stdout: fix format index in stdout_nvm_id_ns
build: update libnvme wrap
nvme-print-stdout: Add helper function to print PIF in string form
nvme-print: print the new fields added in TP4141a
nvme: choose PIF from QPIF if QPIFS supports and PIF is QTYPE
nvme: add helper function to get pif and sts value
nvme: check MD size with PI size when PRACT set to 1
nvme: use proper mask to get correct lbafu value
types: Changed the space into tap space
types: add new fields added in TP4165
nvme-print: print the new fields added in TP4165
types: add new fields added in TP4142
types: Add enum for Completion Condition of Get LBA status command
build: update libnvme wrap
nvme-print: use Completion Condition enum
nvme-print: print the new fields added in TP4142
nvme-print-json: print CMBEBS and CMBSWTP in json format
nvme-print-json: print controller register values in offset order
nvme-print: print NSSES field of CAP register
libnvme: add EMVS support to sanitize command
types: Added enum for SMVES event of PEL log
build: update libnvme wrap
nvme: add EMVS support to sanitize command
nvme-print-stdout: print VERS bit of SANICAP field
doc: Add sanitize command emvs option
nvme-print: Add Sanitize Media Verification Event in PEL log
types: Add ETPVDS and SSI fields of sanitize status log
nvme-print: use NVME_GET in sanitize log
nvme-print: print the new fields added in Sanitize log - TP4152
types: add enum for the fields added in TP4160
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
types: add enum for the fields added in TP4058
nvme: add the new Self-test Code of Device Self-test command
nvme-print-stdout: add human readable output for DSTO field
types: Update id-ns fields based on NVM Command Set Spec 1.1
types: Update nvm-id-ns fields based on NVM Command Set Spec 1.1
types,util: add Asynchronous Event Configuration NVMe 2.1 definitions
build: bump libnvme wrap
nvme-print: print new id-ns fields added in NVM Command Set Spec 1.1
types: add HDISNS field of Host Behavior Support feature
nvme-print: print new fields of nvm_id_ctrl
nvme-print: print Host Behavior Support feature fields
types: add enum for Identify I/O Command Set Data Structure
build: bump libnvme wrap
nvme-print: add human readable output for IOCS Data Structure
nvme-print: print new fields of Asynchronous Event Configuration
types: Update nvme_id_independent_id_ns fields based on NVMe 2.1 spec
nvme-print: print new fields of nvme_id_independent_id_ns
types,util: add enums for Boot Partition Write Protection Config feature
nvme-print: print Boot Partition Write Protection Config feature field
Giulio Benetti (1):
examples: Make examples build selectable
Gollu Appalanaidu (12):
nvme: add identify controller structure 2.0 spec. fields
ioctl: add CDW2 and CDW3 support for Write Zeroes and Verify Command
ioctl: Change IOCTL for read, write and compare commands
ioctl: add multiple update detected result value in fw commit
types: add capacity management command support
types: add spinup control feature (fid=0x1A)
types: add boot partition log support
types: add support for fid supported and effects log(lid = 0x12)
types: add supported log pages log page (lid = 0x00)
ioctl: add lockdown command support
types: add identify endurance group list (cns 0x19) support
nvme: add optional copy format support id ctrl field
Gopinath P (1):
plugin/ocp: Added the OCP Get Feature FID=C3h command API
Gopinath P/Gopinath P (1):
plugin/ocp: Added OCP 2.7 smart extended log changes Updated the smart extended log page structure, json and stdout print ocp2.7 enhancement.
Greg Joyce (12):
sed: Add plugin for basic SED Opal operations
sed: Confirm entered password before initialization.
sed: update SED password when initalizing
sed: only re-read partition table after unlock.
sed: perform a tper revert after lsp revert
tree: handle no address phy slot dirs
plugins/sed: add sid password change
sed: add '--read-only' to lock/unlock commands
sed: extended discovery feature code printing
sed: improved contextual error messages
sed: add SED man pages
sed: better error messages for revert and password
Guangzong Chen (1):
libnvme: fix SIGSEGV in __libnvme_transport_handle_open_mi
Guzebing (1):
nvme: check MUD support before firmware commit
Han Han (3):
spec: Use the correct url of libnvme
spec: Fix the sub-include dir name to nvme
examples: Add src/ into the include and library path
Hannes Reinecke (367):
Make systemd and uuid optional
Parse 'address' string into components
Fixup libuuid compilation
fabrics: fixup hostid size
fabrics: add mapping functions for discovery log entries
tree: Make functions static
Match systemd version with nvme-cli
tree: add 'nvme_host' structure
util: export nvme_get_attr()
test: allow passing in controller name
tree,fabrics: use topology information for discovery
tree,fabrics: per-controller configuration
tree,fabrics: detect discovery loops
fabrics: add 'verbose' option
tree: implement nvme_ctrl_is_persistent()
fabrics: 'tos' is invalid for loop
JSON configuration file handling
tree: add 'nvme_update_config()' as API function
tree: move config_file argument into nvme_root
types: add NVME_LOG_LPO_NONE
fabrics: Read system UUID from DMI and merge hostnqn generation functions
ioctl: add definitions for Namespace Write Protect Feature
ioctl: add 'nsid' parameter to nvme_identify_secondary_ctrl_list()
Add logging functionality to libnvme
tree: argument checking for nvme_create_ctrl()
fabrics: blank out invalid arguments in build_options()
fabrics: add fast_io_fail_tmo option
tree,fabrics: add 'host_iface' controller option
fabrics,tree: Fixes for PCIe devices
tree: error checking in nvme_ns_init()
tree: initialize subsystem in nvme_init_ctrl()
tree: error checking in nvme_init_ctrl()
tree: controller subsystem pointer might be NULL
tree: move static declarations into private header file
tree: Move structures to private.h
tree: add refcounting for objects
tree: add nvme_rescan_ctrl()
tree: export nvme_free_host()
tree: export nvme_free_subsystem()
tree: rename nvme_disconnect_ctrl()
tree: re-read 'state' attribute
Add SWIG interface generator files
examples/discover-loop.py: python example for nvme discovery
test/tree.py: add test script for the python binding
tree: check hostnqn and hostid when scanning topology
libnvme.i: decode discover log page entry fields
tree: initialize all lists
tree: rework topology deallocation
log: export last error message
libnvme.i: display last error message on connect()
libnvme.i: add a 'log_level' function to nvme_root object
tree: add error logging when failing to lookup subsystem name
tree: use 'stat' to lookup nvme controller
tree: rename __nvme_init_ctrl() to nvme_configure_ctrl()
tree: implement nvme_deconfigure_ctrl()
tree: do not free 'path' in nvme_init_ctrl()
tree: avoid crash on unset subsystem in nvme_ctrl_get_host{nqn,id}
fabrics: add nvme_host_t as argument to build_options()
tree: set errno in nvme_create_ctrl()
json: use nvme_msg() instead of fprintf()
tree.h: remove stale declaration of nvme_ctrl_get_nqn()
tree: rework topology for multiple hosts
src/Makefile: fixup depencendy for private.h
private.h: drop 'hostid' and 'hostnqn' from nvme_ctrl_t
examples,test: depend on libnvme.a
tree: fixup crash on pcie controller for older kernels
tree: better logging output
tree: free 'subsysnqn'
tree: set default ANA state to 'optimized'
tree: rework ctrl address generation
Merge pull request #39 from verschwindibussen/fix-shared-build
Merge pull request #33 from hreinecke/scanning
Merge pull request #42 from martin-belanger/scoped-ipv6
Merge pull request #46 from martin-belanger/fix-compiler-warning
Merge pull request #45 from igaw/update-mapfile
tree: remove nvme_ctrl_get_host{nqn,id}
fabrics: make uuid_from_device_tree and uuid_from_dmi static
tree: make nvme_init_ctrl() an internal symbol
json: allow 'NULL' argument to json_update_config()
tree: add nvme_dump_config()
Create make.yml
Merge pull request #49 from linux-nvme/hreinecke-workflow
Add nvme_identify_active_ns_list_csi() and nvme_identify_allocated_ns_list_csi()
Fix version number for meson build
Merge pull request #53 from hreinecke/meson-fix
Merge pull request #55 from igaw/fix-uuid-read-overflow
Merge pull request #63 from igaw/remove-systemd-dep
Merge pull request #58 from martin-belanger/add-more-to-python
Merge pull request #59 from martin-belanger/reowrk-python-exceptions
Add json config schema
Merge pull request #102 from hreinecke/config
Remove references to nvme_ctrl_get_nqn()
fabrics: use nvme_msg() instead of fprintf()
fabrics: decode new discovery log entry type '3'
fabrics: decode discover log page flags
Distinguish between 'nvm' and 'discovery' subsystems
fabrics: set 'discovery' argument for unique discovery controllers
Merge pull request #105 from hreinecke/discovery
Merge pull request #109 from igaw/json-c-dep
fabrics: add nvmf_default_config()
Merge pull request #110 from hreinecke/default-config
Add missing symbols for discovery to map file
Merge pull request #112 from hreinecke/map-update
Merge pull request #114 from martin-belanger/add-tp8013-to-python
fabrics: add missing function documentation and mapfile update
Merge pull request #115 from hreinecke/doc-update
Add 'timeout' parameter to ioctl function
Add 'result' argument to ioctl wrapper functions
Merge pull request #99 from wxiong38/pel_coredump
Merge pull request #118 from hreinecke/timeout
log: fixup SPDX license
Merge pull request #120 from hreinecke/spdx
Implement 'dhchap_key' host and controller attributes
Merge pull request #100 from hreinecke/auth.v5
Add authentication keys to JSON schema
Sanitize zns command arguments
Merge pull request #121 from hreinecke/json-fix
Merge pull request #122 from hreinecke/zns-args
tree: fixup loop address handling
Merge pull request #132 from hreinecke/loop-fix
Merge pull request #134 from hreinecke/discovery-fix
Merge pull request #133 from sc108-lee/update-id-ctrl
Merge pull request #136 from martin-belanger/memleak-swig-module
Decode TLS1.3 transport security
Merge pull request #152 from hreinecke/tsas
Use argument structure for nvme_get_log()
Inline nvme_get_log() wrapper functions
Use argument structure for nvme_set_features() and nvme_get_features()
Use argument structure for nvme_identify()
Inline nvme_identify() wrapper functions
Use argument structure for nvme_format_nvm() and nvme_ns_mgmt()
Use argument structure for nvme_fw_download()
Use argument structure for nvme_fw_commit()
Use argument structure for nvme_security_send() and nvme_security_receive()
Use argument structure for nvme_get_lba_status()
Use argument structure for nvme_directive_send() and nvme_directive_receive()
Use argument structure for nvme_capacity_mgmt()
Use argument structure for nvme_lockdown()
Use argument structure for nvme_set_property() and nvme_get_property()
Use argument structure for nvme_sanize_nvm()
Use argument structure for nvme_dev_self_test()
Use argument structure for nvme_virtual_mgmt()
Use argument structure for NVMe I/O commands
Use argument structure for nvme_dsm()
Use argument structure for nvme_copy()
Use argument structure for NVMe reservation commands
Use argument structure for nvme_zns_mgmt_send() and nvme_zns_mgmt_recv()
Use argument structure for nvme_zns_append()
Inline nvme_flush()
tree: use name as argument to nvme_ctrl_lookup_subsystem_name()
tree: drop 'path' argument from nvme_init_subsystem()
tree: lookup correct subsystem in nvme_scan_ctrl()
tree: scan controllers before scanning subsystems in nvme_scan_topology()
Move 'host_traddr' and 'host_iface' into fabrics configuration
Implement nvme_errno_to_string()
Merge pull request #177 from hreinecke/connect_err
fabrics: do not treat ctrl_loss_tmo values of '-1' as invalid
Merge pull request #178 from tbzatek/docs-updates-5
Merge pull request #135 from hreinecke/ctrl-loss-args
Merge pull request #186 from igaw/print-format-specifier
fabrics: add fabrics config option 'tls'
tree: only open controller device node if required
Merge pull request #194 from hreinecke/ctrl-init
fabrics: kill 'disable_sqflow' argument to nvmf_add_ctrl()
Merge pull request #195 from hreinecke/disable-sqflow
fabrics: Remove nvmf_add_ctrl_opts()
fabrics: Update prototype documentation
fabrics: remove documentation for nvmf_add_ctrl_opts()
Merge pull request #196 from hreinecke/rc-cleanup
Update README.md
Merge pull request #203 from igaw/fix-error-codes
Merge hostname2traddr()
Add 'nvme_root_t' argument to nvme_msg()
Move global logging variables into nvme_root_t
Remove stale definition for nvme_log_message
libnvme/tests: fixup create-ctrl-obj.py
Merge pull request #204 from igaw/fix-nvme_get_log_args-layout
Rework nvme_scan_filter()
Merge pull request #202 from hreinecke/msg-redirect
Remove nvme_reset_topology()
Rename nvme_path_get_subsystem()
tree: document function prototypes
Return error from nvme_read_config()
Ignore errors when opening JSON configuration file
Merge pull request #209 from hreinecke/doc-proto
ioctl.h: fixup kernel-doc comments
linux.h: fixup kernel-doc comments
tree.h: fixup kernel-doc comments
types.h: fixup kernel-doc comments
fabrics.c: fixup kernel-doc comments
util.h: fixup kernel-doc comments
Fixup sphinx warnings
Regenerate libnvme.rst
Add documentation section descriptions
Fixup wrong kernel-doc annotations
tree: fixup memory leak in nvme_scan_ctrl()
tree: restart controller lookup
Add scripts to regenerate documentation
tree: loop controllers can have transport addresses
tree: loop address may be NULL
Merge pull request #219 from hreinecke/lookup-restart
tree: do not set dhchap_key to 'none'
Merge pull request #220 from hreinecke/dhchap-fix
tree: do not print function twice
json: remove wrapper definitions
Make JSON-C mandatory during built
tree: add nvme_dump_tree()
Merge pull request #229 from igaw/remove-jsonc-ifdefs
Document filter functions
Merge pull request #284 from hreinecke/filter-doc
tree: link paths to namespaces in nvme_subsystem_scan_namespace()
tree: add nvme_ctrl_get_ana_state()
Merge pull request #283 from hreinecke/ana-path
tree: fixup coredump during nvme discover
linux: fixup log page offset in nvme_get_log_page()
Merge pull request #296 from igaw/set_default_trsvcid
Merge pull request #298 from hreinecke/log-page-len
meson: build display-tree example
tree: add debugging messages during scanning
tree: do not return error when filtering out subsystems
Merge pull request #319 from hreinecke/scan-filter
json: fix endless loop scanning for controllers
Merge pull request #320 from hreinecke/json-scan
fabrics: add 'nvmf_update_config()'
Merge pull request #322 from hreinecke/update-config
libnvme: export 'nvme_lookup_ctrl()'
Merge pull request #323 from hreinecke/export-symbol
tree: move nvme_init_subsystem() into nvme_lookup_subsystem()
tree: make subsystem name mandatory in nvme_scan_ctrl()
tree: rework nvme_scan_subsystem()
Merge pull request #324 from hreinecke/subsystem-rework
Update function prototype documentation
Merge pull request #327 from hreinecke/doc-update
tree: always allocate config file in nvme_read_config()
Merge pull request #329 from hreinecke/read_config
tree: update nvme_scan_filter_t usage
tree: filter out namespaces
tree: add namespace path iterators
tree: remove 'ctrl_get_ana_state()'
tree: add 'f_args' argument to pass user data to the filter function
Merge pull request #330 from hreinecke/filter-ns
examples/telemetry-listen: coverity fixes
fabrics: coverity fixes
tree: coverity fixes
test/zns: coverity fixes
Merge pull request #356 from hreinecke/coverity
Merge pull request #361 from igaw/clarify-license
tree: simplifiy nvme_subsystem_lookup_namespace()
tree: make nvme_subsystem_scan_namespace() idempotent
tree: make nvme_ctrl_scan_namespace() idempotent
fabrics: Update controller authentication in nvmf_add_ctrl()
json: fixup dhchap_ctrl_key definitions
libnvme: accessors for dhchap_key variables
tree: rename controller 'dhchap_key' to 'dhchap_ctrl_key'
Parse dhchap_host_key on controller level
Update json config schema for missing dhchap host key
linux: add nvme_lookup_keyring()
nvme: add 'nvme_insert_tls_key()' function
linux: add key helper functions
fabrics: add configuration option 'keyring'
fabrics: add configuration option 'tls_key'
nvme-gen-tls-key: add options to derive a TLS key
nvme-check-tls-key: add options to derive a 'retained' TLS key
nvme-connect: enable option '--tls'
nvme-(discover,connect,connect-all): enable options '--keyring' and '--tls_key'
Print out correct TREQ strings for discovery
libnvme: add 'application' setting to the subsystem
libnvme: add 'application' setting to nvme_root
fabrics: filter out subsystems with non-matching application string
src/nvme/tree.c: make __nvme_scan_subsystem() returning bool
Merge pull request #737 from prashanth-nayak/hkdf_expand_label
libnvme: separate out a function 'select_hmac'
libnvme: separate out 'gen_tls_identity' and reshuffle 'derive_nvme_keys'
libnvme: Add base64 functions
libnvme: support NVMe TLS identities version 1
libnvme: Implement 'nvme_generate_tls_key_identity()'
nvme: fixup length calculation for 'nvme gen-tls-key --secret'
Merge pull request #748 from hreinecke/TP8018
libnvme: fixup error codes
libnvme: reshuffle nvme_generate_tls_key_identity()
Merge pull request #749 from hreinecke/TP8018-fixes
subprojects/libnvme: update wrapper for TP8018
nvme: Add version '1' identifier for nvme-gen-tls-key
nvme: print out the resulting TLS identity for 'nvme check-tls-key'
nvme: sanitize nvme-gen-tls-key
Merge pull request #2165 from martin-gpy/warnings_verbose_level
meson.build: fixup 'join' syntax
Merge pull request #770 from hreinecke/fix-join.v2
fabrics: add 'concat' option
build: Update libnvme wrap
nvme-fabrics: enable option 'concat'
linux: allow for NULL argument in nvme_lookup_keyring()
linux: add nvme_read_key()
linux: add nvme_update_key()
crc32: Add CRC32 algorithm
linux: add nvme_export_tls_key()
linux: add nvme_import_tls_key()
linux: rework nvme_insert_tls_key_versioned()
tree: read TLS key in nvme_configure_ctrl()
json: export TLS key in PSK interchange format
json: import TLS key from PSK interchange format
json: dump TLS key data in PSK interchange format
linux: Add nvme_scan_tls_keys()
config-schema.json.in: tls keys and keyrings are strings
fabrics: keyring is a long
libnvme: add missing symbol nvme_scan_tls_keys
nvme: use library functions for importing and exporting TLS keys
build: bump libnvme wrap
nvme: add new function 'tls_key'
ioctl: return EPROTO when an NVMe status occurred
fabrics: retry discovery log page when DNR is not set
ioctl: Update function documentation
ioctl: Update stub functions to match documentation
ioctl: add nvme_set_features_timestamp2()
ioctl: add nvme_set_features_host_behavior2()
ioctl: add nvme_set_features_host_id2()
ioctl: add nvme_set_features_iocs_profile2()
ioctl: add nvme_get_features_timestamp2()
ioctl: add nvme_get_features_host_id2()
ioctl: Return NVMe status in nvme_directive_send_id_endir()
tree: optionally skip namespaces during scanning
linux: update TLS version 1 PSK derivation
linux: fixup PSK HMAC type '0' handling
sed: add '--read-only' to 'sed initialize'
fabrics: make 'disconnect' accepting only -n or -d
linux: set errno when nvme_generate_tls_key_identity() fails
test/psk: add testcase for TLS identity derivation
linux: rename __nvme_insert_tls_key() to __nvme_import_tls_key()
linux: rename __nvme_insert_tls_key_versioned() to __nvme_insert_tls_key()
nvme.i: fix crash on ctrl.discover() without a connection
nvme.i: decode 'tsas' discovery log page entry
nvme.i: fixup typo in nvme:discover
libnvme/nvme.i: Update subsystem definitions
examples/discovery-loop.py: update to use tcp transport
nvme/linux: add fallback implementation for nvme_insert_tls_key_compat()
libnvme.wrap: update to latest version
nvme: add --compat flag for 'gen-tls-key' and 'check-tls-key'
libnvme/nvme.i: raise exception when disconnect fails
python: support 'with' statement for objects
examples/discover-loop.py: rework to use 'with' statement
examples/discover-loop.py: actually implement a discovery loop
nvme/linux: check for empty digest in gen_tls_identity()
libnvme/fabrics: remove duplicate discovery functions
libnvme: clarify dhchap key usage
fabrics: update dhchap options for discovery
fabrics: allow dhchap authentication for unique discovery controller
libnvme: drop duplicate function nvme_ctrl_get_address()
libnvme: drop nvme_subsystem accessors from tree.c
libnvme: generate read-only accessor for 'phy_slot'
libnvme: read-only controller accessors
libnvme: read-only subsystem accessors
libnvme: read-only host accessors
libnvme: auto-generate 'subsysnqn' accessors
libnvme/fabrics; Use nvmf_context as argument to lookup_ctrl()
libnvme/fabrics: drop fabric_args from __create_discovery_ctrl()
libnvme: drop fabric_args
libnvme: drop 'struct nvmf_discovery_ctx'
libnvme: use 'struct nvmf_context' as argument for __nvme_lookup_ctrl()
libnvme: use 'struct nvmf_context' as argument to _candidate_init()
libnvme; use 'struct nvmf_context' as argument to nvme_ctrl_find()
libnvme: Separate out _nvme_create_ctrl()
libnvme: use 'struct nvmf_context' as argument to nvmf_connect_disc_entry()
libnvme: Introduct _nvme_ctrl_match_config()
libnvme: make __nvme_lookup_ctrl() static
libnvme: Re-implement __nvme_lookup_ctrl()
libnvme: convert test/tree.c to 'struct nvmf_context'
libnvme: Drop __nvme_lookup_ctrl()
Hanumanthu H (1):
add cdw13 for set_feature_args structure
Hao Jiang (8):
Add pkgconfig for libnvme-mi
mi: Fix C++ compiler errors
Add more details for return code of MI admin cmds
mi: Init ctrl_id within xfer
mi: Allow zero as a controller ID in nvme_mi_scan_ep
mi: add timeout functions to .map
mi: fix the return error code.
mi: fix the rc for nvme_mi_scan_ep
Haro Panosyan (2):
plugins/solidigm : Fixing vs-internal-log to generate identify per allocated namespace.
plugin/solidigm fixing identify logs generation
Hasan Polat (2):
ioctl: update nvme_set_var_size_tags() to properly use reftag
doc: fix format command info
Heitor Alves de Siqueira (1):
plugins/virtium: use time_t for time_stamp values
Ismael Luceno (1):
Fix poll.h includes
Israel Rukshin (3):
fabrics: Fix fast_io_fail_tmo option
libnvme: Introduce functions to generate host identifier and host NQN
fabrics: Always pass hostid and hostnqn
Jayden Stenfort (3):
Plugin: ScaleFlux Seperating Types
Plugin: ScaleFlux Spelling&Typo Fixes
Plugin: ScaleFlux Use NVME_NSID_ALL
Jeff Lien (13):
linux: Add size and data area parm to nvme_get_telemetry_log
linux: Change nvme_get_log_page to use nvme_get_log_args parm
types: Add Host Initiated Data Gen Number to telemetry log struct
types: Update persistent event entry struct added new fields
types: Add new Identify constant
types: Add support for get log - MI Command Supported
types: Add new enums and defines for TP-4084
doc: Add function nvme_init_copy_range_f1 doc
ioctl: Fix STC mask for device-self-test command
types: Add Storage Tag Check IO Control flag
ioctl: Fixed get log LSP and LSI mask values
build: Add api-types.h to install headers
linux: Add nvme_get_uuid_list function
Jeffrey Lien (2):
plugins/wdc: Fix data Formatting for Latency Monitor Log Page
wdc: Add support for SN861 drive
Jeremy Kerr (119):
Separate libs from link flags to fix link-order compile failure
Build c++ objects with c++ compiler
ioctl: Fix incorrect cdw initialisation in nvme_set_features
configure: simplify config-host.h & config-host.mak generation
meson.build: Add ccan-required configuration macros
Unify configuration includes, use meson-generated configuration data
pynvme: Make swig optional & python bindings conditional on swig
log: we use bool, so include stdbool.h
types.h: heal -> health
private.h: Add required includes
Revert "src/Makefile: fix ccan config.h"
Revert "meson: revert to using the ccan configurator"
makefiles: use config.h in examples/ & tests/
configure: include ccan config from top-level config.h
meson: use correct byteswap macro name
log.h: include tree.h for nvme_root_t
test: drop hardware-dependent tests from meson test target
meson: only build test/cpp if a c++ compiler is available
examples: Fix printf format warnings on 32-bit
libnvme-mi: Introduce NVMe Managament Interface library
mi: Add basic tests
examples/mi-mctp: Add subcommand support
mi: Add NVMe-MI Read MI Data Structure commands for controller and controller list
mi: Add initial Admin channel commands
examples/mi-mctp: Add identify subcommand
test/mi: Improve test OK reporting, print log data separately
api: move _args defintions to api-types.h
mi: change admin channel functions to use _args structs
example: provide an example of both the full and partial identify commands
meson: use host target for defining endianness
Fix %llx/%lx build warnings on powerpc
mi: remove unused nvme_mi_admin_identify()
mi: be consistent with mi function prefixes
mi: Add simple Admin command test
mi: Add Admin error test
mi: fixes for MI Identify command serialisation
mi: Add Admin channel Get Log Page command
examples/mi-mctp: Add Get Log Page example
mi: Add direct admin transfer API
mi: Add security send & security receive commands
mi: rename start argument to _read_mi_data_ctrl_list function
mi: Add kernel-doc documentation to mi header
workflows: Add mi.h to documentation format check
mi: Add initial mi document
doc: check-in processed mi.rst
MI: reinstate init_ep and crc32 functions for use in test
test: define separate library for MI unit tests
mi: free endpoints on root destruction
doc: Add MCTP scan details to mi document
MI: install top-level libnvme-mi.h header
mi: track controller lifetime under endpoint and provide endpoint scan
test: move some common test tools to test/utils.c
test: Add initial tests for mi-mctp layer
mi: be pedantic with message sizes and offsets
mi: be pedantic with response message format
mi: check response status after each submit()
mi-mctp: better handling for error/unexpected responses
test: move test_peer->rx_fn function to transmit path
mi-mctp: Add support for More Processing Required responses
types: fix typo on nvme_mi_ccs definitions in public API
mi: Add types for MI Get/Set Configuration data
mi: Add MI configuration commands
mi: Add examples for MI configuration commands
mi: Add extended MI response status values
mi-mctp: suppress error on scanning endpoints we already have
mi: make return values + errno consistent across error paths
doc/meson: provide a full-path version of api_files
doc: Add a kdoc test for API docs
doc: remove github workflow for doc check
doc: Use correct variable in configure_file input
mi: Add endpoint get/set timeout API
mi: Add maximum More Processing Required limit API
mi-mctp: Add timeout support to MCTP transport
mi: unify MI Get Log Page function with ioctl API
mi: Implement Get & Set Features Admin commands
mi: Add identify helpers for namespace lists
mi: Add identify helpers for namespaces
mi: Add identify helper for nsid-capable Controller List
mi: Implement Namespace Management command and create/delete helpers
mi: Implement NS attach command and helpers
mi: Implement Format NVM command
mi: Implement Sanitize command
mi: Add Get Log Page helpers
example/mi-conf: Add an example for MI transport configuration
mi: Allow Admin-message sized More Processing Required responses
examples/mi-mctp: fix warning for possibly uninitialised variable
github workflows: Add an armhf cross build
github workflows: Add a powerpc64le cross build
mi: Add Identify function for secondary controller list
mi: Introduce a helper for response status, unify values with ioctls
mi: Move post-1.1 symbols to 1_2 section of libnvme-mi.map
mi: Add firmware download and commit commands
mi: fix get_log_page chunked offset check
mi: Distinguish MI status from NVMe (CDW3) status
mi: add nvme_mi_status_to_string()
examples/mi-conf: Initialise sd_bus_error
examples/mi-conf: account for MCTP header in route MTU
mi: Issue a NSID-specific Controller List Identify in nsid_ctrl_list()
mi: Introduce quirks and endpoint probing
mi: Allow probe suppression via an environment variable
mi: Add inter-command-delay quirk
mi: Add model detection via identify in nvme_mi_ep_probe()
mi: Print applied quirks
doc: Add documentation for MI probe behaviour
mi: Add inter-command-delay quirk for Samsung MZUL2512 devices
mi: Fix status extraction from cdw3 field
mi: endian fixes
mi: call nvme_mi_close on endpoint error path
MI: switch from libsdbus to libdbus
test: mi: Explicitly zero args for test API invocations
test: mi: Provide a full request buffer for invalid admin req tests
mi: Add nvme_mi_ctrl_id to retrieve controller ID
mi: don't return from mi_mctp_submit with a tag held
mi: implement length and offset alignment checks in admin_xfer()
mi-mctp: use a linear response buffer
mi: allow non-4-byte-aligned responses
mi-mctp: Fix free() in error path of mi_open_mctp
nvme: fw-download offset only describes FW offset, not file offset
tests: mi: Add test for dlen/doff values through raw admin_xfer interface
Jesse Taube (5):
fabrics: Fix next_line parser.
libnvme/json: Allow hostnqn to be optional
libnvme/json: Allow subsys nqn to be optional
fabrics: Use setup_common_context in create_common_context
fabrics: Use do-while instead of goto in next_line
Jian Zhang (7):
example: fix mi identify failed with error cntid
mi: add control primitive command
examples: add control primitive in mi-mctp
util: avoid min macro pollution
test: check the namespace is not cluttered with min/max
meson: pass -D_GNU_SOURCE to reallocarray detection
sandisk: fix -Wformat-truncation warning in sndk_vs_internal_fw_log()
Jim Munn (19):
build: Fix build failure in generate-accessors with -Werror set.
feat: fix bugs in arbitration and power-thresh commands
feat: Fixed uidx parameter bug.
feat: Add power measurement feature support.
util/mem: fix NULL dereference in nvme_realloc() on allocation failure
nvme: Add power-measurement-log command (LID 0x25)
nvme-print: Decode Sample Rate Scale
nvme-print: Decode 2 new bits in ctratt.
build: use MSYS2 UCRT64 for Windows CI build
util: Fix buffer overflow in process_field_size_default
completions: fix ocp plugin command list and description
ocp: normalize command descriptions for consistency
completions: add power-measurement-log command
fix: remove -j/--json completion for top-level subcommands
util: add json_object_add_value_bool() macro
gitignore: ignore unit-py build artifacts
fabrics: load fabrics module after parsing args
util: add optional argconfig parse hook
build: add python-jsonschema to Windows UCRT64 deps
Jinliang Wang (9):
mi: Add Identify helper for ns-descs and primary-ctrl-caps
mi: add nvme_mi_admin_admin_passthru
mi: fix rc checking
mi: rename tmp variable inside nvme_mi_admin_get_log
mi: use lpo and numd to chunk big get log page command
ioctl: fix log page offset
mi: fix location of spsp1 and spsp0
mi: set correct rc and errno when crc mismatch
mi: restore default ep timeout during admin_passthru
John Meneghini (1):
nbft: make lookup_ctrl function public
Jonathan Teh (1):
tree: fix memory leak in nvme_ctrl_lookup_subsystem_name
Jonghyeon Kim (2):
plugins/mangoboost: Add plugin to support MangoBoost
Documentation: Add man page for mangoboost command
Joy Gu (4):
avoid casting pointer arguments to argconfig functions
types: add cross-namespace copy formats, status codes, ONCS bits
nvme: allow set-features to take input from stdin
nvme-copy: support cross-namespace copy
Karthik Balan (1):
plugins/ocp: fixed crash in telemetry string log output format json
Keith Busch (100):
Initial libnvme commit
Add a telemetry scan example
Add exported symbols to libnvme.map
Add nvme display tree example
examples/telemetry: Fix scanning uevent file
examples: Add column disaply of topology
examples: Add loop discover example
Add documentation
tests: Remove some of the output
Add license information
Add README
util: Fix default log transfer length typo
tests: Fix fw log check
Import ccan modules
Split host and controller telemetry log API
Consolodate features into common header
Update .gitignore
Make systemd-devel optional
Add c++ inclusion support
Add licence tags, copyright, and author comments
Apply kernel-doc comments to more structs and enums
Move ccan up a directory
Fix copyright comments
Set up ccan make dependency correctly
Add man pages for exports
Fill in more documentation details
Update .gitignore
Integration fixes
Fix typo in comments
Testing rst html options
Merge branch 'master' of https://github.com/linux-nvme/libnvme
Fix split line documentation
Fix install make targets
Merge branch 'master' of https://github.com/linux-nvme/libnvme
Fix status code mask
Typo fixes
Move feature field decoding to utilitiies
Fix double free discover log
Merge pull request #1 from safl/master
Fill out additional documentation fields
Merge branch 'master' of https://github.com/linux-nvme/libnvme
Export single namespace open
Define all nvme registers
fix comment typo
Explicit casting from void *
minor updates
have tree export directly opening namespaces
generic whitespace strip routine
export metadata size
zns and ns-types
report zones helpers
fix up get_nsid api
update and inline feature decoding
common code all the complex value accessors
fix mmio accesses
document corner case for large nsids
update doc cross links
add lba status log helper
Merge pull request #2 from tbzatek/get_log_cdw10_mask
fix log numdu mask
Merge pull request #3 from tbzatek/docs-updates-1
Merge pull request #4 from tbzatek/build-pkg-config
Merge pull request #6 from hreinecke/address-parse
Merge pull request #5 from hreinecke/master
updates from integration
fix integration breakage
Merge pull request #7 from hreinecke/topology.v2
Merge pull request #9 from birkelund/fixes
Merge pull request #10 from hreinecke/nvme-cli
Merge pull request #11 from hreinecke/int-fixes
Merge pull request #12 from birkelund/fix
Merge pull request #13 from hreinecke/swig.v3
Merge pull request #14 from hreinecke/realloc
re-arm discovery AEN
Merge pull request #19 from tbzatek/status-to-string
Merge pull request #20 from tbzatek/json-c-build-fixes
Merge pull request #21 from martin-belanger/move-python-to-separate-dir
Merge pull request #24 from tbzatek/docs-updates-2
Merge pull request #15 from jk-ozlabs/fixes
Merge pull request #26 from hreinecke/discovery-fixes
Merge pull request #27 from martin-belanger/fix-empty-model
Merge pull request #29 from martin-belanger/fix-compilation-warning
Merge pull request #28 from hreinecke/topology
Merge pull request #30 from martin-belanger/fix-compilation-warning
Merge pull request #31 from martin-belanger/fix-compilation-warning
Revert "tree: rework topology for multiple hosts"
Merge pull request #34 from wxiong38/hostnqn_uuid_ibm
Merge pull request #36 from verschwindibussen/refactor-uuid_from_device_tree
Merge pull request #37 from verschwindibussen/install-pynvme
Merge pull request #38 from metaspace/nvme-iocs-wrong-cns
Merge pull request #40 from metaspace/fix_csi_create
Merge pull request #41 from birkelund/add-cap-css-csi
Merge pull request #522 from igaw/use-nvme_get_log_page
nvme: Add wait for device self test
fix endians
nvme-cli: fix extended metadata size calculation
nvme: fix directive receive identify offsets
don't include newlines in already wrapped text
nvme-cli: attach ns to local controller if none specified
libnvme: do not byte swap command dwords
Khem Raj (1):
plugins/ssstc: Replace __uint16_t with uint16_t
Klaus Jensen (26):
Typo fix
nvme/fabrics: fix compile error
types: add NVME_CAP_CSS_CSI
update libnvme.map
meson: use library() and rely on user settings
src/Makefile: fix ccan config.h
meson: revert to using the ccan configurator
types: move command parameters from ioctl.h
types: move the feature shift/masks from util.h
linux: move linux specific stuff from util.{c,h}
types: remove endian/mmio helpers
src/meson.build: install missing linux.h
ioctl: fix mask values for virt mgmt
meson: do not leak internal include directories
types: add fdp data structures and helpers
types: nsid is unused in reclaim unit handle usage
build: bump libnvme to f83b2c4c4738
nvme: add io management send/recv commands
nvme: add flexible data placement management commands
types: use nvme_timestamp for fdp events
nvme-print: print unused reclaim unit handles
nvme-print: prettify the fdp event printing
plugins/fdp: use the right command-line switch
nvme-print: print 64 bit values with json add_value_uint64
build: bump libnvme
nvme-print: pretty print fdp event timestamp
Kou Wenqi (1):
nvme: do not report error when nvme_core module is not loaded
Laiwenhu (1):
nvme: validate storage tag size correctly
Laraib Javed (5):
plugins/sandisk: fix memory leak in sndk_get_enc_drive_capabilities()
libnvme: fix null pointer dereference in _discovery_config_json()
nvme: remove dead initialization of data_written in get_telemetry_log()
netapp: fix dead store in netapp_smdevices_get_info() and netapp_ontapdevices_get_info()
wdc: fix null pointer dereference in get_dev_mgmt_log_page_lid_data()
Leonardo da Cunha (53):
util: Added function to find specific UUID in UUID list.
plugins/solidigm: Compressing vs-internal-log log files into zip file.
plugins/ocp: Split ocp_get_uuid_index() into find and get functions.
plugins/ocp: Adjusted variable type size carrying UUID index to 8 bit.
plugins/solidigm: Improved Solidigm UUID index detection.
plugins/solidigm: Additional LID for temperature statistics.
types: Added Command and Feature Lockdown LID
plugins/solidigm: Automatic enabling Data Area 4 when retrieving Telemetry.
nvme-print: Added "Command and Feature Lockdown" string to LID 0x14
plugins/solidigm: Added log pages to vs-internal-logs
plugins/solidigm: Added workload-tracker command
plugins/solidigm: Added Workload Tracker Triggers and Wall Time
completion: add solidgm work-tracker binding
completion: add ocp set-telemetry-profile to zsh
Documentation: Added solidigm plugin commands
plugins/solidigm: Automatic retry smaller log chunk size.
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.
plugins/solidigm: parse-telemetry-log aware of OCP2.5 binaries
plugins/solidigm: Fix parse-telemetry-log command parsing error handling.
documentation: Updated solidigm parse-telemetry-log source-file.
completions: Update solidigm parse-telemetry-log --sourcefile
plugins/solidigm: Updated SMART PLL Lock Loss counters field
plugins/solidigm: Added missing log descriptions and uuid support to some logs.
Documentation: updated solidigm workload tracker page
completions: Updated solidigm workload tracker command
plugin/solidigm: Additional product Telemetry parsing support.
plugin/solidigm: Added EXTENDED vs-internal-log option.
plugins/ocp: Add --all-ns option to command set-error-injection.
plugins/ocp: Add --all-ns option to command get-error-injection.
completions: Added ocp get/set_error_injection options.
plugins/solidigm: Added debug info to parse-telemetry-log.
plugins/solidigm: Better string handling on Telemetry parsing.
plugins/solidigm: Additional nlog warning instrumentation.
nvme-print-stdout: Display id-ctrl ONCS fields according to NVMe spec v.2.3
plugins/solidigm: Added wildcard and filters to telemetry parsing.
plugins/solidigm: Added some Vendor specific SMART Attribute IDs.
plugins/solidigm: parse telemetry error message improvements.
plugins/solidigm: Reverting VU SMART attribute names change.
plugins/solidigm: Enabled Telemetry side trace items parsing.
plugins/solidigm: Added Telemetry config metadata to parser output.
plugins/solidigm: Warning for missing Telemetry object config
plugins/solidigm: Fixed parse Telemetry of multidimensional arrays
plugins/solidigm: Removed some header includes.
plugins/solidigm: Removed Telemetry parser array to string conversion.
plugins/solidigm: Bug Fix reversed Telemetry array dimensions order.
plugins/solidigm: Additional telemetry configuration wildcard.
plugins/solidigm: Additional signature detection into Telemetry parser.
plugins/solidigm: BugFix dumping large telemetry logs.
libnvme: bugfix enabled retrieval of large persistent event log.
plugins/solidigm: Bug fix retrieval of large PEL.
Liang Yan (2):
build: Add vscode directory into ignore
linux: Allocate aligned payload for nvme_get_telemetry_log
Lingkai Zuo (1):
plugins/amzn: Add stats support for EC2 local storage instance type
Lior Weintraub (1):
examples: fix incorrect controller status in MI info output
Markus Kurz (21):
src: rework nvme_dsm command
src: rework nvme_fw_commit command
src: rework nvme_security_send command
src: rework nvme_security_receive command
src: rework nvme_get_lba_status command
src: rework nvme_lockdown command
src: rework nvme_set_property command
src: rework nvme_get_property command
src: rework nvme_sanitize_nvm command
src: rework nvme_dev_self_test command
src: rework nvme_virtual_mgmt command
src: rework nvme_resv_acquire command
src: rework nvme_resv_register command
src: rework nvme_zns_mgmt_send command
src: rework nvme_zns_mgmt_recv command
src: rework nvme_zns_append command
src: rework nvme_lm_cdq command
src: rework nvme_lm_track_send command
src: rework nvme_lm_migration_send command
src: rework nvme_lm_migration_recv command
zns: add error check zns report zones
Martin Belanger (286):
Makefile: fix libnvme_wrap targets
fabrics: Remove trailing newline from debugging messages
Merge branch 'logging.v2' of https://github.com/hreinecke/libnvme
fix memory leak
rename Python class names using SWIG's %rename
Move 'Python bindings' SWIG and Makefile to 'pynvme' directory
add README file for python bindings
Bug fix in Python SWIG module
Merge latest changes from master branch
Default empty model attribute to 'undefined'
Fix compiler warning
Fix memory leaks and double free
Un-stub nvme_free_ctrl(). In other words, nvme_free_ctrl() will now properly delete ctrl objects
Add support for scoped IPv6
Fix compiler warning.
build: Add support for meson build system
Clean up Python exception handling
Expose C enums and #defines in Python module. Add persistent_set() method to the Python nvme_ctrl class.
Make Python Bindings optional
[Python]: Fix inaccurate Python examples
Add Python init() method. Move nvme_init_ctrl() from private.h to tree.h Addess review comments.
Add Python tests to meson framework.
Removed a duplicate line (read from file). I checked with Hannes and he confirmed that the line was added by mistake.
Fix python unit tests when run as a subproject of another project (#91)
Fix reading of system UUID on Debian
Fix host_iface offset.
Add discovery_ctrl_set() to Python bindings.
Document meson's -Db_sanitize=address option
Fix memory leak.
Replacing make by meson.
fix error building the man pages
Define ccan as a static library
fix license info
python: Add dump_config
tree: Add host symbolic name
types: Add DCTYPE to nvme_id_psd
tree: Add cntrltype and dctype to the controller object
types: Add Discovery Information Managment types
util: Add key-value helpers and OS identification tools
ioctl: Add nvme_dim_send()
fabrics: Add support to register with a DC
Move ccan definitions out of public headers.
fabrics: Invoke nvmf_dim() with provided tas argument
fabrics: add NCC to nvmf_disc_eflags
python: add eflags to discovery log page
python: add __version__ to libnvme python package
python: add missing ctrl attrs to Python bindings
examples: Add missing free()
fabrics: Add new TP8010 definitions
fabrics: Add nvmf_get_discovery_wargs()
python: Use nvmf_get_discovery_wargs()
fabrics: Filter out empty strings in add_argument()
examples: LID supported must be shifted right by 16
python: Release GIL on blocking calls
fabrics: Fix bad UUID size introduced in recent UUID changes
docs: Fixed typos and missing options
fabrics: Ensure host-traddr/iface consistency for "connect-all"
python: Fix segmentation fault during garbage collection
python: Return PyObject* from __str__() instead of a static char[]
python test: Check there is no SIGSEGV during garbage collection
python: Reformat SWIG input file
python, meson: Assert that deps are present for -Dpython=true
Python: Add hostnqn_from_file() and hostid_from_file()
Python: Add support for setting/getting Host DHCHAP key
build, meson: Print option summary
build: Print option summary
python: Remove redundant host.set_key() method
python: Add setter property for controller DHCHAP Key
python: Change python option from combo to feature
nbft: Doc typo - Use nvme_nbft_free() instead of nbft_free()
Python: Add NBFT support
NBFT: Remove documentation from nbft.c since it's also in nbft.h
Python: make NBFT data more pythonic
Python: Suppress swig warnings about unnamed struct
python/swig: Wrap swig-sensitive struct inside #ifwdef SWIG
python/swig: Check swig version to determine whether -py3 is needed
Python: Fix crash during garbage collection
util: Add ipaddrs_eq() to check whether two IP addresses are equal
util: rename ipaddrs_eq() to nvme_ipaddrs_eq() and make public.
test: Add more code coverage for nvme_ipaddrs_eq()
tree: Use nvme_ipaddrs_eq() to compare IP addresses
tree: missing closedir() causes fd leak for "/sys/bus/pci/slots"
tree: Don't open nvme devices until it's absolutely required
json: fix seg. fault converting NULL to JSON string
meson: Don't hard-code path to "internal/config.h"
util: Split _nvme_ipaddrs_eq() from nvme_ipaddrs_eq()
tree: Add nvme_ctrl_get_src_addr() to get the controller's src_addr
test: add tests for nvme_ctrl_get_src_addr()
util: Add functions to parse the system's interfaces
tree: Improve TCP controller matching algorithm
test: add tests for new tcp controller matching algorithm
tree: Use early return instead of else statements
fabrics: lookup_discovery_ctrl() must look under host and not root
fabrics: For TCP/RDMA, compare IP addresses with nvme_ipaddrs_eq()
tree: Add 2 new public functions to lookup existing controllers
build: Update libnvme git SHA to pull the right version
fabrics: Removing duplicate code and moving to libnvme
README: Fix meson/python build badges
docs: Fix Read-the-Docs configuration (deprecated config param)
README: Fix meson build badge
build, CI: Add a GitHub Action to run the checkpatch.pl script
build: Update meson commands in Makefile
Makefile: Add new targets and update meson command syntax
Makefile: Add new targets and update meson command syntax
python, swig: add missing controller attributes
tree: handle the case when host_iface/host_traddr are set to "none"
python: fix typo in nvmf_discovery_log
python: Don't exit immediately on discovery fail.
python: fix iterators failing on empty lists
python: remove "iter" elements
meson: Use configure_file() `install` instead of install_data()
python bindings: add some definitions for backward compatibility
libnvme: Rename NVME_LOG_*_DISCOVER to NVME_LOG_*_DISCOVERY
meson: build libnvme directly instead of as a subproject
libnvme: add accessor code generation
docs: Fix URLs referencing deprecated libnvme repo
docs: Fix read-the-docs
PyPI: add meson options to build without nvme executable
PyPI: Do not install/build nvme components
PyPI: fix missing symbolic link libnvme.so.x -> libnvme.so.X.Y.Z
PyPI: Only use major version for libnvme.so
libnvme: Add nvme_getifaddrs()
docs: Make documentation build depend on -Dlibnvme and -Dnvme
ci: use total commit count for unique TestPyPI dev version
ci: do not push to TestPyPi when a git tag is pushed to repo
libnvme: commit pre-generated accessor files and simplify build
build: rename LIBNVME_ACCESSORS_3_0 to LIBNVME_ACCESSORS_3
libnvme.ld: remove duplicate symbols found in accessors.ld
libnvme: move accessor generator to tools/generator/
libnvme: remove stale symbols from libnvme.ld and libnvmf.ld
libnvme: replace accessor generator with Python and add in-source annotations
libnvme: annotate public API symbols with __public
python-libnvme: drop 1.x backward-compatibility shims
doc: update and polish README.md
doc: document default installation paths and how to override them
nvmf: fix timeout not applied to discovery log commands
nvmf: fix generator emitting setters for read-only members in .ld files
nvmf: clean up discovery args struct initialization
nvmf: replace nvmf_get_discovery_log() with opaque-args API
doc: consolidate contributor guidance into CONTRIBUTING.md
test: add unit tests for static helpers in fabrics.c
generate-accessors: fix stale examples and redundant code
generate-accessors: switch annotations to // comment style
generate-accessors: add lifecycle and default-value generation
swig: fix bugs introduced in libnvmf_context refactor
swig: replace libnvmf_context with dict-based ctrl constructor
swig: fix Py_NewRef compatibility with Python < 3.10
swig: guard against silent attribute typos on SWIG objects
libnvme: move fabrics-only helpers to util-fabrics.c
libnvme: add missing prototypes for exported symbols
libnvme: add check-public-headers test
swig: replace hand-written accessor wrappers with auto-generated #defines
libnvme: rename !accessors: member annotation to !access:
libnvme: replace single-mode access annotation with a two-axis model
libnvme: prep accessor annotations and generator for Python bindings redesign
libnvme: rename libnvme_ns_get_uuid to libnvme_ns_copy_uuid
python bindings: redesign Phase 1 — generator-emitted SWIG fragments
python bindings: redesign Phase 2 — API surface polish
ci: replace webispy/checkpatch-action with upstream checkpatch.pl
python bindings: add PUBLISHING.md
python bindings: add exception hierarchy
python bindings: remove deprecated files
Makefile: add checkpatch targets
ci: extend check-accessors to cover all generated files
python bindings: table-driven fabrics config dict parsing
nvme.i: fix brace style for C function definitions
libnvme: introduce async/sync passthru API
libnvme: guard libnvme_submit_admin/io_passthru() against NULL hdl
libnvme: fix libnvme_wait_admin_passthru() ignoring CQE result
uring: annotate unused arguments
libnvme: fix uring_state never updated in __libnvme_transport_handle_open_uring()
libnvme: add __libnvme_ prefix to all compiler attributes
tree: extract TCP ctrl matching into tree-fabrics.c
tree: move TLS/DHChap sysfs readers to tree-fabrics.c
tree: rename fabrics-only functions to libnvmf_ prefix
fabrics: rename callbacks to hooks
fabrics: group hooks and user_data into struct libnvmf_hooks
tree/fabrics: introduce libnvme_ctrl_params and embed in libnvmf_context
fabrics: fix libnvmf_connect() not propagating resolved TLS key IDs
tree: decouple ctrl-find/alloc from libnvmf_context
tree: move ctrl-find cluster to tree-fabrics.c
ci: add no-fabrics build config and unit tests
build: add valgrind test setup
build: add ASan+UBSan test setup
build: add valgrind suppressions and ASan+UBSan CI flag
libnvme: fix hostid leak in libnvme_create_host()
generator: add nested struct accessor support
libnvme: apply annotation to nested structs
fabrics: replace hand-written APIs with generated ones
libnvme: remove libnvmf_ctrl_get_fabrics_config()
libnvmf: add convenience setters for parameter groups
libnvme: add libnvme_ctrl_is_transport_fabric()
libnvme: add NVMe controller ownership registry
nvme: add registry plugin and orchestrator column
libnvmf: wire registry into connect and disconnect paths
nvme: add man pages for registry commands and update disconnect-all
libnvme: move fabrics include list into its own file
libnvme: pass global context to registry public APIs
libnvme-python: make registry python test robust to spawn/forkserver
nvme: rework the registry command-line interface
fabrics: use -t for the disconnect-all --transport short option
fabrics: add --owner to connect, connect-all and discover
libnvme: test that registry attribute values round-trip verbatim
libnvme: guard registry cleanup against instance reuse with uevent_seqnum
doc: add libnvme registry overview (REGISTRY.md)
nvmf-autoconnect: tag connections with --owner=autoconnect
tests: update registry CLI test for reworked nvme registry interface
python-ci: run the unit tests a second time without valgrind
libnvme/json: free the subsystem object when skipping discovery subsystems
libnvme/json: fix misplaced "required" keys in the config schema
libnvme/json: write the config as an object, keep reading the legacy array
libnvme/test: fix exit-code capture in config-diff.sh
libnvme/json: persist the registry owner in the config file
doc: document nvme-cli-ai companion repository
libnvme: drop the log messages from the no-netdb stubs
libnvme: add shared fabrics helpers in preparation for exclusion list
libnvme: add the libnvmf_tid transport identity
libnvme: add the NVMe-oF exclusion list
plugins/exclusion: add the nvme exclusion management plugin
nvme-cli/fabrics: add --exclude to nvme disconnect
doc: add NVMe-oF exclusion list documentation
doc: move REGISTRY.md under libnvme/design/
nvme-cli/fabrics: note an excluded target on connect under --verbose
libnvme: substitute RUNDIR into the registry udev rule
plugins/exclusion: operate on the default list when --name is omitted
libnvme: make discovery connects honor the exclusion list
libnvme/doc: state the library/application boundary
libnvme/doc: add the smart-TID design
libnvme/tid: reject hostnames, canonicalize numeric addresses
libnvme/tid: drop get_hash() and equal()
libnvme/tid: replace per-field setters with a set_identity triplet
libnvme/fabrics: use str(), not get_canonical(), in the exclusion log
libnvme/tid: group functions by role in tid.c/tid.h
libnvme/util: reimplement numeric address helpers without getaddrinfo
libnvme: reject hostname addresses instead of resolving them
nvme-cli/fabrics: resolve hostnames before handing addresses to libnvme
libnvme/test: drop the netdb gating from the libnvme tests
libnvme: classify scoped IPv6 addresses with the TID's numeric test
doc: add NVMe-oF connection configuration documentation
libnvme/config: add an internal INI reader
libnvme/config: add the parameter store and key table
libnvme/config: add an INI-format NVMe-oF config parser
libnvme/config: resolve the cascade into the connection list
libnvme/config: publish the resolved configuration API
libnvme/config: add the connect argument emitter
libnvme/fabrics: use host_iface, not trsvcid, in libnvmf_add_ctrl()
meson: stop deriving RUNDIR from --prefix
nvme-cli/fabrics: add --idempotent to nvme connect
libnvme/fabrics: add --devid-file to nvme connect
libnvme/config: add the configuration write side
libnvme/config: deduplicate CONFIG_MAIN_PATH
libnvme/python: add config_read() and config_validate()
doc: add NEWS.md
nvme-cli: add the config.json reader for INI conversion
fabrics, nvme-cli: add the discovery.conf reader for INI conversion
nvme-cli: add the config-convert command
libnvme/design: fix stale config-convert references in CONFIG.md
doc: add nvme-config-convert man page
tests: extract shared command/logging infra into TestNVMeBase
tests: add end-to-end coverage for nvme config-convert
libnvme/config: apply a parameter store to a connect context
fabrics, nvme-cli: consume the INI config directly from the CLI
libnvme: fix regressions from the implicit host-lookup removal
libnvme: consolidate libnvme_get_host() into tree.c
libnvme/fabrics: drop the dead JSON config loops and parser hooks
meson: stop installing an empty discovery.conf stub by default
nvme-cli: retire --dump-config from discover/connect-all/connect
doc: add nvme-fabrics.conf(5) man page and sample file
libnvme/test: check fopen() before fclose() in config-emit
nvme-cli: rework "nvme config" into config-validate/config-show
nvme, plugins/config: migrate config-* into a config plugin
nvme: fabrics_config_validate: reject a missing config file
nvme: fix a crash in config-validate/config-show/config-convert under -o json
libnvme: fix bogus host-lookup failure in NBFT discovery
nvme: fix legacy config.json auto-conversion naming
libnvme: drop the legacy JSON config path and json.c/json-c
libnvme/test: replace tree-dump with a JSON-free scan_topology test
libnvme/test: restore hostnqn precedence test coverage
fabrics: don't resolve host_traddr as a hostname
libnvme: validate FC WWN addressing in tid_sanitize_addr()
nvme: add JSON output to config show
doc: add man pages for config show and validate
libnvme: write registry entry on an already-connected controller
fabrics: check registry owner before connect-all/discover
libnvme: let the accessor generator override the naming segment
libnvme: generate the trivial libnvme_global_ctx bool accessors
Martin George (125):
fabrics: update log level for write failures
tree: avoid segfault if subsysnqn is not available
fabrics: sanitize dump-config output
nvme-tree: avoid segfault if auth keys are unavailable
json-schema: add dhchap_key details to host section
libnvme.map: add nvme_ctrl_is_persistent()
nvme-print: fix segfault in supported-log-pages json output
nvme-doc: update man page for supported-log-pages
nvme: fix block count and data size logic
nvme-print: sanitize supported-log-pages output
fabrics: fix fc config JSON file handling
fabrics: prevent 'nvme connect' to well-known discovery NQN
nvme-print: fix counter while looping through uuid_list
nvme-tree: avoid warning in 'list-subsys'
tree: fix segfault in nvme_scan_subsystem()
udev-rule: apply round-robin iopolicy on i/o subsystems alone
udev-rules: set ctrl_loss_tmo to -1 for ONTAP NVMe/TCP
udev-rules: rename netapp udev rule
json-schema: add keyring and tls_key details
nvme: restric hmac options for gen-tls-key
fabrics: fix invalid output format error during nvme connect
fabrics: fix connect error if hostid file does not exist
nvme-print-stdout: enhance connect message
fabrics: move hostid/hostnqn warnings to verbose level
linux: avoid segfault in check-tls-key due to null hostnqn/subsysnqn
nvme: print inserted tls key for check-tls-key
nvme-print: fix typo in list verbose output
nvme-print: print more details in ns-descs verbose output
nvme-netapp: add nspath tlv handling
nvme: print retained key for gen-tls-key's -i option too
nvme: check-tls-key fails despite having hostnqn file
tree: fix mem leak in nvme_ns_init()
fabrics: fix mem leak in nvmf_check_hostid_and_hostnqn()
nvme: fix mem leak in multiple key related functions
tree: fix segfault in nvme_free_tree()
nvme: update parse_args() return value handling
nvme: fix verbose logging
fabrics: print an error for ENOENT too
nvme: avoid segfault in show-topology
fabrics: avoid potential segfault in nvmf_dim()
netapp: fix uninitialized value from heap error
netapp: segregate the print routines
netapp: print output for single device too
nvme-print: add subsystype to the list-subsys output
nvme-print: update subsys verbose outputs
nvme-print: sanitize error-log output
nvme: update nvme_insert_tls_key_versioned() return handling
fabrics: fix incorrect access filename check
netapp-smdevices: segregate print routines
netapp-smdevices: print single device output too
tree: fix dhchap_key mem leak
tree: fix dhchap_ctrl_key mem leak
tree: fix tls key mem leak
nvme: fix uninitialized value in error-log
nvme-print-stdout: update changed-ns-list-log output
nvme-print-json: update JSON verbose output for nvm-id-ctrl
nvme-print-json: display only verbose output
nvme: update tls_key() handling
netapp-smdev: add err msg for no smdevices
netapp-ontapdev: add err msg for no ontapdevices
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
tree: add routine to fetch subsys model
tree: add routine to fetch subsys firmware rev
netapp-ontapdev: add subsysname to the verbose output
netapp-ontapdev: add subsysname to regular output
nvme-print: display model in list-subsys output
nvme-print: display fw-rev in list-subsys output
tree: add routine to fetch subsys serial number
build: bump libnvme wrap
nvme-print: display serial num in list-subsys output
nvme: fix mem leak in nvme copy
netapp-ontapdev: update invalid device handling
netapp-smdev: update invalid device handling
libnvme: sanitize free() handling
nvme-cli: sanitize free() handling
nvme: update the tls 'compat' option documentation
test/mi: avoid compile warning in test_admin_invalid_formats()
fabrics: fix uninitialized value in _nvmf_discovery()
fabrics: fix mem leak at nvmf_discovery_config_file()
fabrics: fix concat during nvme connect-all
fabrics: add error if --tls and --concat are invoked together
fabrics: add error if no dhchap-secret is specified with --concat
fabrics: add error if dhchap-ctrl-secret is specified with --concat
fabrics: fix fabrics_connect() error message
fabrics: fix mem leak at nvmf_connect()
fabrics: add additional debug messages for --tls and --concat
tree: fix mem leak in list-subsys verbose option
nvme: sanitize call to strerror()
nvme: standardize nvme_strerror() usage
tree: update nvme_scan_ctrl() return handling
fabrics: update get_entity_name() return handling
nvme: update format specifier in nvme_show_error()
tree: fix nvme_subsystem_scan_namespaces() return handling
nvme: fix segfault at nvme_match_devname()
nvme-print: align print output for get-feature host behavior
nvme-print: align print output for get-reg cc
nvme-print: align print output for get-reg cap
fabrics: permit bi-auth with secure concat TLS
tree: avoid updating --tls in nvme_read_sysfs_tls()
fabrics: add helper to update tls and concat
fabrics: update device connect message
fabrics: avoid connect segfault for invalid param
fabrics: sanitize traddr & trsvcid handling during connect-all
nvme: ensure log_level is properly updated
Martin Joerg (1):
nvme: Fix invalid memory access in show_registers
Martin Wilck (5):
fabrics: fix conditions in nvmf-autoconnect.service
fabrics: autoconnect: add service unit for connecting NBFT subsystems
fabrics: add udev rule to avoid renaming nbft interfaces
nbft: avoid duplicate entries in ssns->hfis
nvmf-autoconnect: add NetworkManager dispatcher script
Mateusz Kozlowski (2):
nvme: Fix nvme format block-size option handling
plugins/zns: Fix offset in report zones
Matt Johnston (4):
mi: provide a facility for transports to describe endpoints
mi: Add MI endpoints to root_t, and add iterators
mi: Add facility to scan MI endpoints from MCTP daemon
examples/mi-mctp: Add 'dbus' option
Maurizio Lombardi (23):
mi: fix a memory leak in nvme_mi_open_mctp()
mi: fix a static checker warning in examples/mi-mctp
util: fix a file handle leak in nvme_uuid_random()
fabrics: fix a check-after-dereference error in nvmf_discovery_log()
nvme: fix rnlpt to_string() values.
fabrics: fix potential invalid memory access in __nvmf_supported_option()
Revert "nvme: Masks SSTAT in sanize-log output"
libnvme: fix a memory leak in read_discovery()
libnvme: fix a memory leak when calling read_ssns()
create-ns: align the namespaces to 1Mib boundaries when using SI suffixes
fabrics: check the read() return value
nvme: fix error path if write() fails in get_telemetry_log()
types: add the nvme Cancel command opcode
nvme-print: add the cancel opcode to the nvme_cmd_to_string() list
nvme: telemetry: report the correct error if the ioctl() fails.
nvme-print-json: add missing va_end()
linux: avoid potential null pointer dereference
mi-mctp: initialize the rc variable in handle_mctp_endpoint()
plugins/solidigm: fix use after free.
ns_descs: prevent buffer overrun and memory corruption
nvme: Fix get-feature on big-endian systems
libnvme: propagate the error to the caller if nvme_get_log_page() fails
Add nvme_fabrics module loading function
Michal Rábek (8):
lib: save one strdup by using GNU basename() implementation
build: fix musl build
build: add a musl build configuration
ci: add a musl build job
test: fix musl libc test fail due to locale differences
test: fix 'diff --unified' failing on Alpine Linux
ci: add build job in an Alpine container with musl
build: add an option to specify a list of plugins to include
Milan Broz (1):
sed: Fix parsing of Discovery0 features
Minh Hoang (Storage HW) (1):
Fixed OCP Latency Monitor stdout spacing in column header
Minsik Jeon (8):
nvme: use correct telemetry log size
rpm: Add missing rule and service files
nvme-print-json: Bugfix status json key of sanitize-log
plugins/fdp: bugfix error check to validate output format
nvme: Support show-regs for nvmeof
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.
Minwoo Im (7):
tree: add namespace chrdev name to nvme_ns
tree: rename namespace function name chrdev to generic
types: add opcode field to error log page (TP4113)
build: Bump up libnvme wrap
print: print csi and opcode in error log (TP4113)
tree: fix generic device open failure
nvme-print: Unify number base format for nsid
Nate Thornton (15):
ioctl: set data length when retrieving LBA status
types: Add TP4159 PCIe Infrastructure for Live Migration definitions
types: Live Migration
ioctl: Live Migration
build: bump libnvme wrap
print: OACS Host Managed Live Migration Support (HMLMS)
plugin/lm: Introduce Live Migration plugin
types: Add Create Queue Specific (CQS) shift and mask for LM CDQ command
nvme: add --block-size option to io commands to bypass identify commands.
completions: add --block-size option to io commands to bypass identify commands.
docs: update with new --block-size= argument for compare/read/write
logging: suppress logging except during normal output
ocp: Add all statistics to the map table
lm: Migration Recv displayed suspend status is incorrect
nvme: Allow commit action = 0b011 (replace and activate immediate)
Nick darkfiberiru Wolff (1):
nvme: apply user-specified timeout via transport handle
Nilay Shroff (52):
nvme: Don't seg fault if given device is not char/block device
libnvme : record the nvme pci adapter physical slot
tree: Add NVM subsystem controller identifier
fabrics : allow host to create duplicate connections to target
nvme-print: Print cntlid number for controller
tree: add support for discovering nvme paths using sysfs multipath link
tree: add queue-depth attribute for nvme path object
tree: add attribute numa_nodes for NVMe path object
test: extend sysfs tree dump test
nvme-list: fix verbose JSON output for 'nvme list' command
nvme-list: make verbose JSON output backward compatible
nvme: support <device> option in show-topology command
nvme: extend show-topology command to add support for multipath
nvme: add common APIs for printing tabular format output
nvme: add support for printing show-topology in tabular form
nvme: avoid printing iopolicy in list-subsys output
nvme: add iopolicy field in JSON output
nvme-cli: extend show-topology tabular output for non-multipath subsys
nvme-cli: extend show-topology tabular output for multipath subsys
libnvme: annotate libnvme_path::ana_state with !accessors:none
libnvme: annotate libnvme_path::numa_nodes with !accessors:none
libnvme: annotate libnvme_subsystem::iopolicy with !accessors:none
libnvme: add support for retrieving per-path gendisk I/O statistics
libnvme: add support for retrieving namespace gendisk I/O statistics
libnvme: add support for per-path diagnostic counters
libnvme: add support for namespace diagnostic counters
libnvme: add support for nshead diagnostic counters
libnvme: add support for ctrl diagnostic counters
nvme: add support for unsigned and long types in table_get_value_width()
nvme: use table_get_value_width() in table_print_centered()
nvme: add support for float and double types in table_print_XXX()
nvme: allow table output to be directed to a FILE stream
nvme: add sigaction for SIGWINCH
nvme: add generic top-like dashboard framework
nvme: add nvme top command
nvme-top: avoid NULL dereference on non-multipath host
libnvme: fix memleak in libnvme_subsystem_set_ns_path
nvme-top: preserve selected subsystem across topology refresh
util/table: fix memory leak in table_add_columns_filter()
util/table: extend table APIs to support fixed width column
nvme: use AUTO_WIDTH for show topology tabular output
nvme-top: use fixed width columns
build: add Clang Static Analyzer support
libnvme: update diag attribute paths
libnvme: rename diag attributes and update paths
build: add Clang analyzer workflow
build: use fedora container for analyzer workflow
nvme-top: restore selected subsystem to the first entry
nvme-top: support paging in the top dashboard
nvme-top: synthesize NVMe kobject uevent on ENOBUFS
libnvme: return status from libnvme_refresh_topology()
nvme-top: avoid recreating the global NVMe context on topology updates
Nitesh Shetty (1):
nvme: plugins/fdp, check endurance group identifier
Nitin Sao (9):
types: add new field added in TP4090
types: add new field added in TP4099
build: bump libnvme wrap
nvme-print: add new field added in TP4090
nvme-print: Added print for two new fields for HMB feature
types: Added new controller attribute as per TP4104
types: Added new field CSER in enum as per TP4167
build: bump libnvme wrap
nvme-print-stdout: Added print for new field CSER (TP4167)
Oliver Upton (1):
common.h: Avoid using unsupported load/store instructions in arm64 VMs
Paul Wood (1):
ocp-telemetry-decode: fix ascii string lookup
Prashanth Nayak (2):
nvme: Add length field to Hkdf-Expand-Label computation
linux: Correct error handling for derive_psk_digest
Praveen Kumar B/Praveen Kumar B (1):
pulgin/ocp: Added the OCP2.7 supported Get feature FID=CAh command api
Sagi Grimberg (7):
fabrics: restore hostname traddr support
fabrics: fix endless loop in connect-all for NVME_NQN_CURR
fabrics: don't treat host_traddr 'none' as a valid hostname
nvme-print: print the nvme generic name in json output as well
nvme-print: fix wrong list-subsys output when ns are attached to different ctrls
make: fix make rpm target
udev: Add custom udev rule for the Vast Data Block array
Sam James (5):
test: handle POSIX ioctl prototype
meson: make building tests conditional
Use C99 types for uint32_t
nvme: Use C99 types for uint32_t
plugins/innogrit: `u_char` -> `unsigned char`
Sami Waheed (1):
Update ioctl.h
Sarah Ahmed (8):
fabrics: fix inverted child controller check in _nvmf_discovery()
wdc-nvme: fix null dereference of sph in get_dev_mgmt_log_page_lid_data()
tree: replace strdup with xstrdup in nvme_alloc_subsystem()
wdc-nvme: validate PCI ID lookup in wdc_log_page_directory()
sfx-nvme: fix sizeof mismatch in calloc in nvme_dump_evtlog()
ioctl-linux: fix uninitialized cmd32.result in ioctl_passthru32()
ocp-smart-extended-log: fix sizeof mismatch in malloc for get_c0_log_page()
wdc-nvme: replace wdc_get_pci_ids() with nvme_get_pci_ids()
Sebastian Brzezinka (3):
nvme-print: check if controller belong to SPDK
plugins/spdk: plugin to list SPDK subsystems
nvme-print: expand the maximum field length to prevent misalignment
Shin'ichiro Kawasaki (1):
fabrics: Use corresponding hostid when hostnqn is generated
Simon A. F. Lund (2):
Fix dependency on systemd
Makefile: add 'make uninstall'
Sivaprasad Gutha (4):
plugins/micron: update to support latest products
plugins/micron: adding missing product support
nvme: plot eye chart data and hex dumping VS eye data
nvme: Added message key for printable eye in normal format
Stefan Hajnoczi (1):
nvme: fix /dev/spkd/ typo
Stellios Leventis (1):
plugins/wdc: Extend SN530 support.
Stephen Bates (1):
ocp-nvme: Add a different formatting for JSON output
Stephen Cheng (1):
tree: Fix potential NULL pointer dereference in nvme_host_get_ids()
Steve Chang (1):
doc: fix typos and grammar issues in README.md
Steven Seungcheol Lee (81):
types: fix wrong bits nvme_id_psd apw[178:176], aps[183:182]
types: Add New fields on PEL based on NVMe 2.0a
types: Add Identify for CNS 08h NVMe spec 2.0a based
types: fix(Add missing fields rrl, frl, lbafe)
types: Add missing Zone Attributes Information on zone descriptor
doc: There is no nvme_host_mem_buf_desc in source files
Add libjson version check on configure to fix build error
doc: Add ocfs explaination
Add missing function(nvme_get_log_zns_changed_zones) to map file
zns: Add support for zone random write area (zrwa)
build: Add subpackages contents to .gitignore
meson: ssl version checking allowed version only
util: modify flbas rsvd bits to be used
ioctl: Modify identify command argument based on spec
types: Add NVM Command Set id-ns structure
ioctl: Add identify ioctl for CNS 09h, 0Ah
nvme: Add nulbaf(Number of Unique Capability LBA Formats) field on nvmd_id_ns
nvme: get log domain id included in Log Specific Identifier
ioctl: nvme_io_args.dspec(Directive Specific) value is 16 bits
types: fix status code type bug (wrong masking)
types.h: Key Value Command Set Identifier added (NVME_CSI_KV)
ioctl.h: ns list bug fix (wrong cns value)
libnvme: export 'nvme_scan_ctrls'
meson: libsystemd <= 219 does not support sd-bus, sd-event
rpmbuild: Enable 'make rpm' to build rpm pkgs #408
completion: fix typo, add missing args
nvme.c: Check Firmware Update Granularity in fwdl
doc: fix kernel-doc-check warning
fdp: Fix wrong Reclaim Unit Handle Status size
nvme: Fix parameter limit range
types.h: Add FDP related Status Code
types: Add ns-mgmt host software specified fields
types: Add IO command set specific field on nsmgmt
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
ioctl: io management send, receive args fix
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
nvme: Do not map status to errno codes
tree: Modify label name close_fd to close_dev
Makefile: add standalone build
meson: Add libhugetlbfs option to not included in static
build: Add static build on CI target
build: bump libnvme to disable tests option
nvme: reduce identify cmd issue
nvme: fix overflow possiblity
README: Add make static explanation
nvme: fix lbaf inuse to use 6:5 bits
ioctl: refactoring set_features
ocp-nvme: remove ocp log page version checking
ocp-nvme: Add LMDATA-37 for Latency Monitor Log
ocp-nvme: ocp plugin version update
ocp-nvme: Recommit removed patch
types: Add id-ctrl CTRATT.RHII enum
ocp-nvme: Update ocp v2.6 Hardware Component
ocp-nvme: Add Error Injection type from ocp2.6
rpm: use defined prefix from meson
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
ioctl,types: telemetry log update based NVMe v2.1
mi: telemetry log update based NVMe v2.1
build: bump libnvme wrap
nvme: Host-init telemetry log mcda field added
types: Update id-ctrl field based on NVMe 2.1 spec
types: use __le16 instead of __u16 for data fields
types: Add enum for nvme_id_ctrl.trattr
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
mi: Add ISH bit (admin command cflags)
Stuart Hayes (6):
nbft: add NBFT v1.0 table support
nbft: added NBFT v1.0 table support
nbft: add the nbft show plugin
nbft: fix tcp/dhcp address fallback retry
fabrics: fix NULL dereference in nvmf_update_tls_concat
nbft: use the correct interfaces for NBFT connections
Swapna Samoju (1):
micron: add smart-log and id-ctrl commands
Swapnil Dinkar (1):
plugins/amzn: add stats support
Tetsuya TAKAHASHI (2):
ocp: fix GUID output
ocp: fix option handling in internal-log
Thomas Weißschuh (1):
util: Add feature length for host memory buffer
Thu Nguyen (1):
Update mctp APIs to mctp codeconstruct version 2.0
Tokunori Ikegami (767):
util: Add get feature length 2 API to support direction parameter
nvme-print: Display smart log data units read and written SI value
util: Add file stream parameter to print word wrapped
MAINT: util: Delete duplicated OPT_LONG definition
util: Parse suffix binary value as unsinged long long correctly
doc: Add storage-tag option description for compare, read and write commands
types: Add abort self-test code value definition
nvme: Use self-test code definition values instead hard-coded values
nvme: Ignore device self-test wait option for abort operation
nvme: Add device self-test SIGINT signal handling for wait option to abort
nvme: Move static variable definitions to top of file
doc: Update device-self-test command documentation
nvme: Use abort self-test code definition value instead hard-code value
nvme: Filter out status flags for get feature command
unit: Add test-argconfig-parse
util: Revert JSON output to plain numbers
nvme: Continue get feature on invalid NS error to get multiple feature ids
nvme: Align get feature data buffer length by page size to allocate
util: Add argconfig seen flag parameter to check if feature NSID set
plugins/ocp: Add support for EOL/PLP failure mode feature
plugins/ocp: Add support for clear PCIe correctable error counters feature
plugins/ocp: Refactor to clear feature identifier C1h and C3h
plugins/ocp: Add set feature EOL/PLP failure mode no-uuid option
util: Introduce argconfig simple helper to check seen condition
nvme: Check fw-commit command support MUD
nvme-print: Fix nvme show status function indentation errors
util: Use argconfig commandline options pointer directly
nvme: Fix format command function indentation errors
util: Cleanup argconfig parse function
nvme-print-json: Add json output status function
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
fabrics: Add EADDRNOTAVAIL error mapping
util: Use HAVE_NETDB instead of HAVE_LIBNSS
json: Use memory block allocated by realloc() instead printbuf
nvme: Add support for create-ns command endg-id option parameter
util: Set LC_ALL=C as default if -H option is not used
util: Delete unused CFG_BOOL argconfig type as duplicated with CFG_FLAG
README: Correct hugetlbfs spelling error
nvme-rpmb: Fix nvme_show_id_ctrl_rpmbs() definition error
nvme: Revert passthru and submit_io to print status to stderr from stdout
types: Add support for EGFEAT, Domain Identifier, TEGCAP and UEGCAP
nvme-print: Fix endurance_log whitespace changes
nvme-print: Add support for EGFEAT, Domain Identifier, TEGCAP and UEGCAP
Fix incorrect article 'an' as 'a' to use for a description
ioctl: Add debugging feature to show command outputs
log: Add nvme root global variable to set for default output
types: Define FLBAS MASK and SHIFT to use NVME_GET
types: Use NVME_SET for status type mask to get status value
util: Split argconfig output format json function to set and get
util: Fix to set argconfig output format json option correctly
nvme: Add verbose default option to show command debug output
fabrics: Fix NVMF_ARGS macro to use parameter n correctly
nvme: Change to use NVME_ARGS verbose default option from OPT_ARGS
nvme: Add output-format default option instead of argconfig json option
nvme-print-stdout: Add CAP.CPS and CAP.NSSS human readable outputs
nvme-print-stdout: Fix to set stdout_list_item print function missed
nvme-print-json: Change order list functions and set NULL if unimplemented
nvme-print-binary: Set list function to NULL if unimplemented
nvme-print: Add nvme_zns_finish_zone_list() API function
nvme-print: Add nvme_zns_start_zone_list() API function
nvme-print-json: Add directive print function
nvme-print-stdout: Fix coding style errors
nvme-print-json: Add id_iocs print function
nvme-print-json: Combine variable definition and setting value
nvme-print-json: Add lba_status print function
nvme-print-json: Use json_print to print and free object
nvme-print-json: Add select_result print function
nvme-print-json: Add show_feature_fields print function
nvme-print-json: Add TMPTH feature print function
nvme-print-json: Add feature fields print functions
nvme-print-json: Add host memory buffer and timestamp features print functions
nvme: Change to use NVME_FLBAS_META_EXT() macro to check flbas value
nvme: Change phy-rx-eom-log command to use NVME_ARGS instead
nvme: Change short option -o and -v duplicated to upper case
doc: Change short option -o and -v duplicated to upper case
completions: Change short option -o and -v duplicated to upper case
completions: Add nvme-mi-recv nad nvme-mi-send commands completions
doc: Add nvme commands --output-format and --verbose options
doc: Add id-ns-granularity command
doc: Add list-secondary command
doc: Add id-uuid command
doc: Add virt-mgmt command
nvme-print: Correct to print correct ascii character string length
build: Add -std=c99 to CFLAGS for muon on CentOS 7
nvme-print-json: Update formatting and codying style
nvme-print-json: Add remaining feature fields print functions
nvme: Fix get-feature command mixed stdout and json outputs
nvme-print-json: Change d() output to use d_json()
nvme: Replace get feature command stderr output to nvme_show_error()
nvme-print-json: Add single_property printf function
nvme-print-json: Add static "result" and "erorr" strings variables
nvme-print-json: Print persistent_event_log no log data result correctly
nvme-print-json: Replace effects_log_list print to use json_print()
nvme-print-json: Remove unnecessary string newline code
nvme-print-json: Split persistent_event_log print function
nvme-print-json: Add root_add_result() to output result message
nvme-print-json: Add json_zns_changed print function
nvme-print-json: Unify json_list and jroot object names to root
nvme-print-json: Add id_ctrl_rpmbs print function
nvme-print-json: Add lba_range print function
nvme-print-json: Add lba_status_info print function
nvme-print-json: Add list_item print function
nvme-print-json: Replace lba_status_log printf() to root_add_result()
nvme-print-json: Update lba_status_log to use root_add_***() and obj_add_***()
nvme-print-json: Update feature_show_fields_*** to use root/obj_add_***()
nvme-print-json: Replase json_object_add_value_string() to obj/root_add_str()
nvme-print-json: Replase json_object_add_value_uint64() to obj/root_add_uint64()
nvme-print-json: Replase json_object_add_value_int() to obj/root_add_int()
nvme-print-json: Replase json_object_add_value_uint() to obj/root_add_uint()
nvme-print-json: Replase json_object_add_value_array() to obj/root_add_array()
nvme-print-json: Replase json_array_add_value_object() to array_add_obj()
nvme-print-json: Replase json_object_add_value_object() to obj/root_add_obj()
nvme-print-json: Replase json_object_add_value_uint128() to obj/root_add_uint128()
nvme-print-json: Replase json_array_add_value_string() to array_add_str()
nvme-print-json: Combine duplicated json key and val string variables
nvme-print-json: Add readable format cap, vs, cc, csts, nssr and crto registers
nvme-print-json: Add remaining controller registers readable format
nvme-print-json: Delete static const char string global variables
nvme-print-json: Use r instead of root and use obj_add_***(r, ..., ...)
nvme-print: Add nvme_show_error_status() to merge error message and status
nvme-print-json: Add show_init/finish calls to report features in array
nvme-print-json: Change to report error and data in array
nvme-print-json: Change to report feature select in array
nvme-print-json: Change to report status and message in array
build: Add -std=c99 for bootstrapping muon
build: remove the wrap feature dependency for muon
build: Disable muon bestline for CentOS 7 build error
types: Add controller properties CMBEBS, CMBSWTP and NSSD
types: Add persistent event log reporting context definitions
types: Add PEL reporting context port identifier type definitions
Revert "nvme-print-json: remove obj_print helper"
nvme: Add show-regs and get-property commands NSSD print outputs
nvme-print-stdout: Use persistent event log RCI definitions
nvme-print: Add PEL RCI port identifier type printf function
nvme-print: Fix nvme_host_metadata_type_to_string() indentation errors
nvme-print-stdout: Delete duplicated if condition checking line
nvme-print-json, nvme-print-stdout: Use CHAR_BIT definition
nvme-print, common: Fix for whitespace change
nvme: Delete duplicated semicolon
nvme: Delete unusual fallthrough for cases have no body
nvme-print-stdout: Fix linux kernel check patch errors
nvme-print-stdout: Check sscanf return value
nvme-print-stdout: Fix channel configuration descriptors pointer
doc: Fix documentation file mode 100755 to 100644
doc: Fix get-property and set-property offset and value descriptions
micron-nvme: Unuse stat() to check if strMainDirName exists
doc: Add get-feature cdw11 and set-feature cdw12 parameters
doc: Fix admin and io passthru cdw parameters description
nvme-print-stdout: Use NVME_PMRCAP register definition to print
nvme-print-stdout: Use NVME_PMRCTL_EN register definition to print
nvme-print-stdout: Use NVME_PMRSTS register definitions to print
nvme-print-stdout: Use NVME_PMREBS register definitions to print
nvme-print-stdout: Use NVME_PMRSWTP register definitions to print
nvme-print-stdout: Use NVME_PMRMSC register definitions to print
types: Add PEL header additional information definitions
types: Add boot partition information definitions
types: Fix enum nvme_pel_rci documentation error
types: Add PEL set feature event layout definitions
ioctl: Move nvme_cmd_dword_fields definitions into header file
nvme-print-stdout: Split line length exceeded 100 columns
nvme-print-stdout: Fix LBA status DSLBA output as hexadecimal
nvme-print-stdout: Change hexadecimal value 0x prefix to use %#x
logging: Split to output ioctl latency by log info level
nvme-print: Add PEL EHAI port identifier type printf function
nvme-print-stdout: Use NVME_SET_FEAT_EVENT register definitions
nvme-print-stdout: Use NVME_GET for FID supported and effects FSP
nvme-print-stdout: Use NVME_GET for MI commands supported and effects CSP
nvme-print-stdout: Use NVME_BOOT_PARTITION_INFO field definitions
nvme: Delete unused nvme root scanned
plugins/wdc: Whitespace changes
plugins/wdc: Fix narrow index variable type in for loop to __u32
types: Fix EOM header optional data present fields definition
types: Add optional data present filed mask and shift definition
nvme: Fix to cleanup free raw_secret memory allocated
nvme-print-stdout: use FDP configuration attributes definitions
nvme-print-stdout: use NVME_MAJOR and NVME_MINOR definitions
nvme-print-stdout: use controller configuration definitions
nvme-print-stdout: use CSTS definitions
nvme-print-stdout: use admin queue attributes definitions
types: Fix NVME_CSTS_SHST_MASK definition
nvme-print: Use EOM optional data present macros changed
nvme-print: Refactor CMBLOC and PMRSTS registers function
nvme-print: Change PMRSZU string function as unit string
nvme: Refactor mmap_registers to add writable parameter
nvme-print: Add register print functions
nvme-print-stdout: Add register print functions
nvme-print-json: Add register print functions
nvme: Add support for get-reg and set-reg commands
ioctl: Add nvme_ns_mgmt_delete_timeout()
types: Fix boot partition read offset (BPROF) mask value
nvme-print-stdout: Use NVME_CMBLOC definitions
nvme-print-stdout: Use NVME_CMBSZ definitions
nvme-print-stdout: Use NVME_BPINFO definitions
nvme-print-stdout: Use NVME_BPRSEL definitions
types: Add NVME_CMBEBS property definitions
types: Add CMBSWTP property definitions
types: Add NVME_CMIC definitions
nvme: Add fw-download warning message for FWUG alignment error
nvme: Change fw-download xfer initialization to set 0
types: Add enum nvme_csts documentation
types: add controller status shutdown type (CSTS.ST) definition
build: bump libnvme wrap
nvme-print-stdout: Use NVME_CMBMSC/STS/EBS/SWTP definitions
nvme-print: Use NVME_UNIT definitions
types: Add enum nvme_unit/cmbebs/cmbswtp/flbas/cmic documentation
types: add enum nvme_cap documentation
types: add CAP.CPS and CAP.NSSS definitions
test: add CSTS.ST, CAP.CPS and CAP.NSSS registers
examples: fix mi-mctp build warning errors
nvme-print-stdout: Use NVME_CMIC definitions
nvme-print-stdout: Add CSTS.ST register stdout print
types: Fix PMRWBM register name
types: fix CRTO.CRIMT mask value definition
types: add controller properties enum documentation
types: add ASQ, ACQ and BPMBL controller properties definitions
nvme-print-json: add obj_add_uint_0nx() function
nvme-print-json: add obj_d() function
nvme-print-json: add support set feature event in PEL
nvme-print-json: add support telemetry log create event in PEL
nvme-print-json: use NVME_BOOT_PARTITION_INFO field definitions
nvme-print-json: use NVME_MAJOR and NVME_MINOR definitions
nvme-print-json, nvme-print-stdout: add tertiary version number
nvme-print-json: use controller configuration definitions
nvme-print-stdout: use POWER_OF_TWO macro
nvme-print-json: use CSTS definitions
nvme-print-json: use admin queue attributes definitions
nvme-print-stdout: fix ASQB, ACQB and BMBBA prints
doc: add nvme connet ctrl-loss-tmo description
nvme-print-json: Fix linux kernel check patch errors
nvme-print-json: Fix channel configuration descriptors pointer
nvme-print-stdout: Fix PMRWBM register name
nvme-print-json: Use NVME_PMRxxx register definitions to print
nvme-print-json: Fix LBA status DSLBA output as hexadecimal
nvme: Add nvme_cfg global variable for NVME_ARGS default options
nvme: Add nvme_cfg timeout default option
nvme: Change NVME_DEFAULT_IOCTL_TIMEOUT to use nvme_cfg timeout
nvme: Add support for delete-ns command timeout option
doc: Add nvme commands timeout option
completions: Fix bash-nvme-completion.sh indentation errors
completions: Fix _nvme indentation errors
completions: Change fw-activate command name to fw-commit
completions: Add /dev/nvme argument missed
completions: Add io-mgmt-recv/send commands zsh completions
completions: Add timeout option zsh completions
completions: Add timeout option bash completions
types: add PEL vendor specific and TCG defined events definitions
nvme-print: Print PEL reserved event string
build: bump libnvme wrap
nvme-print: add PEL vendor specific and TCG defined events strings
nvme: Add smart-log command fahrenheit option
doc: Add smart-log command fahrenheit option
completions: add smart-log command fahrenheit option
nvme-print-binary: Fix binary_smart_log indentation error
nvme-print-stdout: Fix stdout_smart_log indentation error
nvme-print: Fix nvme_show_smart_log indentation error
nvme-print: Use 'unsigned int' instead of 'unsigned'
nvme: add flags type nvme_print_flags_t
nvme: change _cleanup_file_ to _cleanup_fd_
nvme-print: check locale to use temperatures in degrees fahrenheit
nvme: delete smart-log command fahrenheit option
nvme: add get-feature and id-ctrl commands fahrenheit outputs
nvme-print-json: add get-feature command fahrenheit temperature output
nvme: use _cleanup_free_ type buffer for get-feature command
nvme: extern NVME_ARGS macro definition
ocp: use NVME_ARGS macro definition by eol-plp-failure-mode command
nvme-rpmb: send RPMB_REQ_READ_RESULT for authentication key programming
ocp: set UUID index for eol-plp-failure-mode command to get
doc: fix ocp eol-plp-failure-mode select short option
ocp: fix eol-plp-failure-mode command sel option value
ocp: add get-error-injection command
doc: add ocp get-error-injection command
completions: add ocp get-error-injection command
nvme-print-binary: add effects-log command output missed
ccan: Add freed pointer checking to delete strset member
ocp: add set-error-injection command
doc: add ocp set-error-injection command
completions: add ocp set-error-injection command
nvme: return -ENXIO value to open device if errno not set
tree: fix nvme_read_config() to not set errno if return 0
nvme-print: use LC_MEASUREMENT to check fahrenheit temperature
nvme-print-stdout: use NVME_FEAT util definitions
util: extern uint128_t_to_double() function
logging: add print_info function
nvme-print-stdout: add print_array function
ocp: fix to set return value to get c9 log page data
ocp: fix to return c9 log page data error to open file
ocp: Change C9 function names to use c9 instead
ocp: fix ocp-nvme.c coding style errors
nvme-print-json: use _cleanup_free_
nvme: use NVME_GET_FEATURES_SEL_SUPPORTED definition
ocp: add get-enable-ieee1667-silo command
ocp: add error recovery log page version 3
ocp: add SMART / health information extended log page version 4
nvme-print-json: extern json object add functions
nvme: use NVME_CTRL_FNA definitions
types: add NVME_CHECK() definition to check nvme register field value
ocp: add support for hwcomp log page
ocp: add hwcomp dummy definition
ocp: add hwcomp log command comp-id option
ocp: add hwcomp log command list option
ocp: add hwcomp log json output
doc: add ocp hardware-component-log command
completions: add ocp hardware-component-log command
ocp: split ocp-hwcomp log
build: bump libnvme wrap
nvme: use NVME_CHECK() to check get features select field value
types: add NVME_VAL() definition
types: add NVME_CTRL_FNA definitions to get field values
ocp: fix to set log data pointer allocated
ocp: include util/types.h to use nvme_uint128_t
types: add NVME_CTRL_OAES_TTHR definition
types: add NVME_CTRL_OAES get macro definitions
nvme-print-stdout: use NVME_CTRL_OAES definitions
nvme: use NVME_GET_FEATURES_SEL definitions
nvme: separate get NVME_GET_FEATURES_SEL_CHANGED definition
doc: add get-feature command changed option
completions: add get-feature command changed option
nvme-print: fix error information log page endianness error
nvme: fix to convert metadata size to native byte order
ocp-print: move json code into separate files
plugins: update meson.build file to always build ocp plugin
ocp: split ocp-fw-activation-history print codes
ocp: split smart extended log print codes
ocp: move ocp telemetry log print function into ocp-print
ocp: split latency monitor log print codes
ocp: split unsupported requirement log print codes
ocp: split error recovery log print codes
ocp: split device capabilities log print codes
ocp: split telemetry string log print codes
ocp: split TCG configuration log print codes
ocp: build ocp-nvme.c and ocp-telemetry-decode.c without json
ocp: fix ocp-nvme.c indentation errors
ocp: fix ocp-print-stdout.c indentation error
ocp: remove callback function cast
ocp: combine to use GUID length definitions
types: add NVMe 2.1 get log page LIDs
types: add struct nvme_id_ctrl_nvm ver and lbamqf member variables
ocp: fix firmware activation history entry endian
ocp: fix TCG configuration log endian
ocp: fix latency monitoring data structure entry endian
opc: fix hardware component descriptions bytes number
types: add NVME_ID_CTRL_NVM_LBAMQF definitions
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
types: fix lm data field unsigned values to little endian
types: error information log entry status field definitions
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
types: add NVMe 2.1 identify power state descriptor fields
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
types: Add NVMe 2.1 feature ID definitions
types: add NVMe 2.1 admin command opcode definitions
types: add NVMe 2.1 identify command CNS definitions
ioctl: add nvme_get_endgid_log()
ioctl: add nvme_get_log_rotational_media_info()
ioctl: add nvme_get_log_dispersed_ns_participating_nss()
ioctl: add nvme_get_log_mgmt_addr_list()
ioctl: add nvme_get_log_reachability_groups()
ioctl: add nvme_get_log_reachability_associations()
ioctl: add nvme_get_log_changed_alloc_ns_list()
ioctl: add nvme_get_log_host_discover()
ioctl: add nvme_get_log_ave_discover()
ioctl: add nvme_get_log_pull_model_ddc_req()
types: add NVME_FEAT_FDPE_*** definitions
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: add I/O command fabric commands opcode definition
types: fix enum nvme_psd definitions indentation errors
types: add spinup control and pls features definition
mi: add nvme_mi_admin_get_log_mgmt_addr_list()
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
types: add 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"
mi: fix indentation errors
ioctl: add libnvme-mi NVMe 2.1 log page APIs
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
ioctl: fix nvme_get_log_reachability_groups() parameters order
types: fix nvme_reachability_association_desc member variable name
nvme: fix reachability-groups-log command perror message
mi: fix nvme_mi_admin_get_log_reachability_groups() parameters order
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
libnvme: export nvmf_exat_ptr_next
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
types: add SLM and CP command set indicator values
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
plugins: move meson.build solidigm-nvme.c into solidigm/meson.build
plugins: sort subdir list as alphabetical order
ocp: replace no-uuid option help string to use no_uuid variable
nvme-print-json: set allocation error string directly
nvme-print: add nvme_show_perror() variable number arguments
plugins: add NVMe feature extension
nvme-print: use allocation error string variable
nvme: fix to set nvme_io_args reftag value
types: add performance attribute structures
types: add performance characteristics feature access values
util: add performance characteristics feature decode function
types: add performance characteristics attribute type values
types: add performance characteristics attribute definitions
util: add performance characteristic feature length
build: bump libnvme wrap
nvme: add performance characteristic feature output
nvme-print-json: add performance characteristic feature output
feat: add perf-characteristics command
plugin: translate -h into commands
feat: add hctm command
nvme: add dry-run NVME_ARGS default option
util: add FDP events feature length
mi: add nvme_mi_submit entry and exit weak functions
nvme: add general_help str parameter to filter sub-commands
types: add temperature threshold feature TMPTHH field
ioctl: add temperature threshold TMPSEL and THSEL parameters to get
feat: combine get functions
nvme: delete host identifier feature length checking
nvme: make --opcode argument mandatory
doc: add opcode description as mandatory
feat: add FEAT_ARGS to use instead of NVME_ARGS
nvme: add output-format-version option
nvme: add dir-send command human-readable deprecated help text
feat: add timestamp command
feat: add temp-thresh command
feat: fix to set perfc feature save argument correctly
doc: update dir-send command documentation on -H
build: delete docs=disabled muon build option
logging: add nvme_mi_submit entry and exit functions
sighdl: include stddef header file for NULL definition
nvme-print: add show_key_value print_ops
nvme: output NS management command result by json
tests: validate create-ns command nsid json output
nvme-print-json: reverse pel power on reset parameter order error
examples: add explicit pthread dependency to meson
wdc: fix muon build warning
util: add json_object_add_string() function
nvme-print-json: output actual lbaf data size for verbose mode
nvme: output copy command success message for json format
nvme-print-json: count json_show_init() and json_show_finish() calls
nvme: change get_dev() to call nvme_show_init() for debug log level
logging: output command and latency debug for json format
wdc: use HAVE_TM_GMTOFF meson configuration variable
nvme: change NS management status message as error
types: add SMART / health information CW shift and mask values
feat: add arbitration command
nvme-print-stdout: add format command relatives prints
doc: add nvme list namespace usage sizes description
nvme-print-stdout: add name space usage binary suffix verbose print
nvme: output nvme_alloc_huge() error message
nvme: add get-log command symbolic names
doc: add get-log command symbolic names
nvme: add get and set feature commands symbolic names
doc: add get and set feature commands symbolic names
feat: add volatile-wc command
nvme-print-stdout: add get log command verbose outputs
nvme-print-stdout: add ANA, PEL and LBA status log verbose outputs
ioctl: fix nvme_get_log_endurance_grp_evt() description
nvme-print: fix stdout_endurance_group_event_agg_log() parameter
nvme-print-stdout: add get log verbose outputs
mi: add arbitration feature get function
mi: add power management feature functions
mi: correct mi admin feature functions map file
build: bump libnvme wrap
nvme-wrap: add power management and arbitration features functions
nvme-print-stdout: add get-log command verbose outputs
nvme-print: print both celsius and fahrenheit temperature values
util: add table_init_with_columns() function
util: allow table_add_columns() to set column width
util: remove unnecessary row end padding print
nvme-print-stdout: replace nvme simple list with generic table
util: use switch case statements instead of repeated else if
util: move to add final padding printf between each columns
util: rename table_init() to table_create()
zns: replace zns list with generic table
nvme-print-stdout: fix detailed list row field width
ioctl: fix get_log_partial to use uring for link type direct
fabrics: fix nvme_get_adrfam function description parameter ctrl as c
test: fix ioctl/logs.c -Wint-in-bool-context warnings
ioctl: introduce nvme_identify helper functions
ioctl: introduce get log helper functions
ioctl: introduce get/set feature helper functions
ioctl: rework nvme_dsm command
nvme: rework nvme_io command
nvme: rework nvme_copy command
ioctl: refactor nvme_get_log_partial uring
test/zns: fix kernel-doc-check warnings
examples: fix mi-mctp.c kernel-doc-check warning
examples: do not use "/**" opening comment mark
test: fix mi.c kernel-doc-check warning
linux: change nvme_transport_handle_get_name to return base name
nvme: fix to call nvme_submit_io_passthru for I/O commands
nvme: fix copy_cmd to get pif and sts values
nvme: correct to check dry-run option
types: add NVMe 2.3 opcode, fid and lid definitions
nvme: add support for sanitize-ns command
nvme: add sanitize ns specific status code string
doc: correct id-ns vendor-specific short option
nvme-print-stdout: change stdout_d() to not print equal line
nvme-print-stdout: print equal line by stdout_d() for debug log level
nvme-print: introduce nvme_show_err() helper function
nvme: fix get_pi_info() handling for submit_io() error
nvme-print: introduce nvme_show_cmd_err() helper function
nvme: correct sanitize in progress definition name
nvme: check chardev for resets and rescan
nvme: Combine duplicated char dev error message string variables
nvme: fix to add device open error message
feat: add power-limit command
feat: add power-thresh command
util: fix argconfig_match_val() to check option value length
nvme: add fw-commit command ca option values
nvme: check fw-commit command ca value with definition
nvme, doc: update fw-commit action help message and documentation
libnvme: replace fprintf to nvme_msg
libnvme/fabrics: fix inet_pton_with_scope function header description
libnvme/fabrics: replace fprintf to nvme_msg
libnvme/json: check write return value for build warnings
libnvme/linux: allow /dev/ngX device as character device
nvme: allow char dev filter for show-topology and list-subsys commands
nvme-print-stdout: fix get feature 128-bit host id print
nvme-print-stdout: delete stdout_feat_perfc fid parameter unused
libnvme/ioctl: introduce ioctl_io64 nvme transport direct handle
nvme-print-json: fix get feature 128-bit host id print
nvme-print-stdout: fix to use le64_to_cpu for host id feature print
nvme-print, ocp-print-json: fix to output alloc_error
libnvme/test: add to test copy desc format 0h
libnvme: rename copy_range and add new fields
libnvme/cmds: change copy desc format tags to big-endian
nvme: change default output format version to 2
feat: add err-recovery command
feat: add num-queues command
nvme-print: fix nvme_show_cmd_err to pass admin parameter
nvme-print: change nvme_show_cmd_err cmd parameter to opcode
nvme: add get and set features specific status code string
doc: add output-format-version option description
nvme: change nvme_show_err parameters order
nvme-print: change nvme_show_err parameter msg to fmt
feat: use nvme_show_err() helper function
tests: fix python TypeError errors
nvme: handle get-feature output format in nvme-print layer
nvme: use new error handling helper for get-feature error handling
doc: add error-log command description for fields and ordering
nvme: introdue error-log filter logic option arguments
nvme-print-stdout: fix error-log endian errors
nvme-print-stdout: fix error-log indentation errors
nvme-print-json: add to print error-log fields missed
nvme-print-json: fix error-log checkpatch warnings
nvme-print: use error-log STS fields API macros
doc: introdue error-log filter logic option arguments
completions: introdue error-log filter logic option arguments
nvme-types-base: rename nvme_cmd_get_log_telemetry_host_lsp
nvme: use #pragma once to reduce header file #ifndef code
build: use fallthrough attribute instead of __fallthrough__
build: use NVME_ prefix for HAVE_FOO defines
nvme-print: fix LBA range type 0h as general purpose
nvme: call nvme_show_finish by closing transport handle
feat: sort feat commands list by FID ordering
nvme: use DSM max ranges macro definition
nvme: add support for sanitize wait option
nvme: add support for sanitize repeat option
nvme-types-base: add sanicap vers and nvers definitions
nvme: add support for sanitize sanicap verification
doc: add sanitize command wait and repeat options
completions: add sanitize command wait and repeat options
logging: add data and metadata dump to show command
logging: add log level debug verbose
util: add argconfig hidden parameter
nvme: drop deprecated human-readable option
doc: remove human-readable option
completions: remove human-readable option
tests: replace human-readable option to verbose option
util: replace to check human-readable option to verbose option
feat: use command line args verbose setting to show feature
fabrics: make uuid_from_dmi_entries more robust
fabrics: split uuid_from_dmi_entries file read function
Tomas Bzatek (93):
ioctl: Fix NVME_LOG_CDW10_NUMDL_MASK
Docs strings updates
build: Include libnvme.pc in the default make target
util: Add nvme_status_to_string()
types: Add new status codes
util: Add strings for new status codes
build: Fix build without json-c
types: Device self-test doc strings update
types: Fix a typo in the NVME_FORMAT_MSET_EXTENEDED constant
types: Doc strings update for Sanitize and Format operations
build: Change library version to be a valid number
types: Fabrics doc strings updates
fabrics: Don't include trailing newline in nvmf_hostnqn_generate()
tree: Handle NULL hostid in nvme_lookup_host()
docs: Fix a typo in README.md
types: TP8013 and TP8014 doc strings updates
tree: nvme_configure_ctrl(): Set errno to zero on success
tree: Clarify NULL return values from nvme_get_attr()
fabrics: Add missing break in a switch
fabrics: Fix leaking ctrl in nvmf_connect_disc_entry()
tree: Avoid dereferencing nvme_subsystem_t before its check for NULL
tree: Fix leaking 'name' in nvme_subsystem_lookup_namespace()
tree: Fix subsystem initialization in nvme_scan_ctrl()
tree: Handle NULL subsysname in nvme_scan_ctrl()
fabrics: Fix build_options() return values
fabrics: Fix uuid_from_dmi_entries() read buffer initialization
tree: Fix leaking struct nvme_ns.generic_name
build: Fix nss code snippet includes
nbft: Move added symbols to LIBNVME_1_5
nbft: Add a simple unit test
nbft: Fix nbft_ssns_flags endianness test
nbft: Parse the {HOSTID,HOSTNQN}_CONFIGURED flags
util: Introduce alloc helper with alignment support
tree: Allocate aligned payloads for ns scan
linux: Allocate aligned payloads for id_ctrl and id_ns calls
fabrics: Allocate aligned payloads for id_ctrl and discovery log calls
tree: Fix clearing application strings
doc: Fix nvme-connect manpage --application option string
fabrics: Explicitly initialize auto-cleanup variables
linux: Explicitly initialize auto-cleanup variables
tree: Explicitly initialize auto-cleanup variables
util: Explicitly initialize auto-cleanup variables
nbft: Fix (struct nbft_info_subsystem_ns).num_hfis off-by-one
tests: Fix diffs output for duplicate HFI entries
tests: Add sample NBFT table from Dell PowerEdge R760
tests: Add sample NBFT table from Dell PowerEdge R660
linux: Explicitly initialize auto-cleanup variables
log: Introduce nvme_get_logging_level()
log: Respect DEFAULT_LOGLEVEL on uninitialized logging
doc: Document the NBFT API
nbft: Add SSNS 'unavailable' flag
nbft: Add SSNS 'discovered' flag
tests: Adapt to added NBFT SSNS flags
tests: Add complex NBFT table from Dell R660
nbft: Whitespace fixes
json: Fix uninitialized variables
build: Switch default meson buildtype to 'debugoptimized'
nvme-print-json: Fix uninitialized variable
nvme-print-stdout: Fix uninitialized variable
plugins/sed: Fix uninitialized variable
plugins/nbft: Fix uninitialized variables
nbft: Fix uninitialized variable
plugins/nbft: Print the new SSNS flags
plugins/nbft: Implement verbose logging
nbft: Fix 'verbose' argument type
nbft: Silence connection failures for unavailable SSNS
nbft: Pause logging for expected connection failures
nbft: Include SSNS index in error messages
build: Switch default meson buildtype to 'debugoptimized'
nbft: Refactor connection attempt out
nbft: Fix scandir() error check
tests: Add sample NBFT table with mpath IPv4+IPv6 discovery
util: Add string constant for ENVME_CONNECT_IGNORED
linux: Fix uninitialized variables
plugins/nbft: Use default library logging
fabrics: Introduce simple URI parser
tests: Add uriparser tests
fabrics: Unescape URI elements
fabrics: Make some symbols public
util/cleanup: Add cleanup for struct nvme_fabrics_uri
nbft: Perform actual discovery
nbft: Skip SSNS records pointing to well-known discovery NQN
nbft: Reuse existing discovery controller
linux: Remove the use of OpenSSL Engine API
nbft: Report proper error codes from discover_from_nbft()
tests: Add sample NBFT table with empty HFI ipv6 address
tests: Add an empty NBFT table
libnvme/tests: Fix a libvnme typo
libnvme/mi: Fix a libvnme typo
nvme-types-nbft: Update to Boot Specification rev. 1.3
nbft: Extend the parser for Boot Specification rev. 1.3
nbft: Use original flags instead of individual bool members
nbft: Add Security Profile Descriptor API
Tomas Winkler (3):
wdc: add wdc_is_zn350() wrapper
wdc: make char pointer arguments and variables const where appropriate
wdc: use libnvme's nvme_uuid_find() for UUID lookup
Tomasz Zawadzki (1):
plugins/spdk: plugin to list SPDK controllers
TotalCaesar659 (1):
Update URLs to HTTPS
Umer Saleem (4):
tree: Add PCI physical slot number for controller
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
Vasuki Manikarnike (1):
udev: Add custom udev rules for HPE Alletra Storage
Vigneshwaran Saravanan (9):
plugins/ocp: Added ocp unsupported requirements log page
plugin/ocp_fid_c6h:Added the ocp C6h feature api Reviewed-by: Karthik Balan karthik.b82@samsung.com, Arunpandian J arun.j@samsung.com Signed-off-by: Vigneshwaran Saravanan/SSD TS Dev /SSIR/Engineer/Samsung Electronics <s.vignesh@samsung.com>
plugins/ocp:Added the ocp C6h feature api Reviewed-by: Karthik Balan karthik.b82@samsung.com, Arunpandian J arun.j@samsung.com Signed-off-by: Vigneshwaran Saravanan/SSD TS Dev /SSIR/Engineer/Samsung Electronics <s.vignesh@samsung.com>
plugins/ocp: Add ocp TCG Configuration Log Page
plugins/ocp: Update telemetry string log page (C9h)
plugins/ocp: fix UAF when printing telemetry log
plugins/ocp: Added OCP 2.6 telemetry support Updated the Telemetry Structure and Enum to support the OCP 2.6 spec
plugin/ocp: Added the OCP Get Feature FID=C5h command api
plugin/ocp: Added the OCP Get Feature FID=C8h command api
Vikash Kumar (1):
nvme: allocate payload buffer in create-ns command
Vincent Fu (2):
nvme-print-stdout: fix storage tag size label
nvme-print: omit size of protection information
Vishal Pankaj Chandratreya (2):
Changed 'Kelvin' to 'kelvin', as recommended by the BIPM.
Made temperature readouts in line with the SI.
Warner Losh (7):
sed_opal: Only build when we really have sed_opal headers
meson.build: Fix spelling of sed-opal.h filename
examples: Include sys/stat.h for S_I* constants
ccan/endian.h: Only define __{BIG,LITTLE}_ENDIAN if undefined.
solidigm: Eliminate <linux/limits.h>
micron: Add missing newline
wdc: On FreeBSD, get the timezone the same as with real glibc
Wei Hou (2):
util/types: Move convert_ts to util/types
util/types: Add generic spinner
Wen Xiong (4):
libnvme: Add new events support in PEL
ioctl: Set lsp to action in nvme_get_log_persistent_event
plugins/ibm: Add IBM specific plugins code
plugins/ibm: show persist events log
Wilfred Mallawa (1):
nvme: fix security buffer allocation size
Xiaoyuan Zhang (6):
nvme-print-stdout: fix persistent-event-log set feature event output
plugins: Add a new DapuStor plugin and the smart-log-add command
plugins/dapustor: dapustor smart-log-add update
completions: add the zsh completion of the dapustor plugin
plugins/dapustor: smart-log-add fix
nvme-print: fix Arbitration Mechanism Supported
Yi Zhang (1):
Fix common misspellings from codespell project
Zhen Wang (3):
plugins/amzn: Enable namespace metrics for EC2 local storage
plugins/amzn: Handle EC2 local storage controller devices
amzn: Add interval polling for NVMe latency stats
chengjike (1):
fix path->nentry bugs
cions (1):
ioctl.h: Fix clang -Wc++11-narrowing error
da Cunha, Leonardo (11):
plugins/ocp: Use network byte order for OCP UUID value
plugins/solidigm: Add uuid index resolution
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.
nvme: Fix retrieval of telemetry log up to specified data area.
linux: Added functions to enable faster telemetry data retrieval. Moved telemetry data area support detection into separate function. Added possibility to modify data transfer chunk size. Enable telemetry extraction up to specified data area. Removed some printf() and perror().
nvme: Fixed segmentation fault when getting host initiated telemetry
plugins/solidigm: internal-logs Telemetry auto detect last data area. Faster telemetry retrieval using large buffers.
plugins/solidigm: Added support for temperature statistics log page
plugins/solidigm: Added OCP 2.0 vs-drive-info command.
dependabot[bot] (62):
build(deps): bump codecov/codecov-action from 1 to 3
build(deps): bump actions/setup-python from 1 to 3
build(deps): bump actions/upload-artifact from 1 to 3
build(deps): bump actions/checkout from 2 to 3
build(deps): bump actions/setup-python from 3 to 4
build(deps): bump actions/checkout from 2 to 3
build(deps): bump actions/upload-artifact from 2 to 3
build(deps): bump sand4rt/ftp-deployer from 1.4 to 1.7
build(deps): bump actions/checkout from 3 to 4
build(deps): bump actions/checkout from 3 to 4
build(deps): bump actions/checkout from 3 to 4
build(deps): bump actions/checkout from 3 to 4
build(deps): bump actions/upload-artifact from 3 to 4
build(deps): bump actions/download-artifact from 3 to 4
build(deps): bump dawidd6/action-download-artifact from 2 to 3
build(deps): bump github/codeql-action from 2 to 3
build(deps): bump actions/upload-artifact from 3 to 4
build(deps): bump codecov/codecov-action from 3 to 4
build(deps): bump codecov/codecov-action from 3 to 4
build(deps): bump sand4rt/ftp-deployer from 1.7 to 1.8
build(deps): bump AppImageCrafters/build-appimage from 1.3 to 2
build(deps): bump dawidd6/action-download-artifact from 3 to 5
build(deps): bump dawidd6/action-download-artifact from 5 to 6
build(deps): bump mosteo-actions/docker-run from 1 to 2
build(deps): bump mosteo-actions/docker-run from 1 to 2
build(deps): bump codecov/codecov-action from 4 to 5
build(deps): bump codecov/codecov-action from 4 to 5
build(deps): bump pypa/gh-action-pypi-publish@release/v1.5
build(deps): Bump actions/download-artifact from 4 to 5
build(deps): bump actions/download-artifact from 4 to 5
build(deps): bump actions/checkout from 4 to 5
build(deps): Bump actions/checkout from 4 to 5
build(deps): Bump pypa/gh-action-pypi-publish in /.github/workflows
build(deps): bump github/codeql-action from 3 to 4
build(deps): Bump actions/upload-artifact from 4 to 5
build(deps): Bump actions/download-artifact from 5 to 6
build(deps): bump actions/upload-artifact from 4 to 5
build(deps): bump actions/download-artifact from 5 to 6
build(deps): bump actions/checkout from 5 to 6
build(deps): bump actions/upload-artifact from 5 to 6
build(deps): bump actions/download-artifact from 6 to 7
build(deps): bump github/codeql-action from 4.32.4 to 4.32.5
build(deps): bump actions/download-artifact from 7.0.0 to 8.0.0
build(deps): bump actions/upload-artifact from 6.0.0 to 7.0.0
build(deps): bump docker/setup-qemu-action from 3.7.0 to 4.0.0
build(deps): bump docker/login-action from 3.7.0 to 4.0.0
build(deps): bump github/codeql-action from 4.32.5 to 4.33.0
build(deps): bump github/codeql-action from 4.33.0 to 4.34.1
build(deps): bump codecov/codecov-action from 5.5.2 to 6.0.0
build(deps): bump github/codeql-action from 4.34.1 to 4.35.1
build(deps): bump pypa/gh-action-pypi-publish from 1.13.0 to 1.14.0
build(deps): bump docker/login-action from 4.0.0 to 4.1.0
build(deps): bump docker/setup-qemu-action from 4.0.0 to 4.1.0
build(deps): bump github/codeql-action from 4.35.1 to 4.36.0
build(deps): bump docker/login-action from 4.1.0 to 4.2.0
build(deps): bump codecov/codecov-action from 6.0.0 to 7.0.0
build(deps): bump msys2/setup-msys2 from 2.31.0 to 2.32.0
build(deps): bump actions/checkout from 6.0.2 to 7.0.0
build(deps): bump docker/setup-qemu-action from 4.1.0 to 4.2.0
build(deps): bump github/codeql-action/analyze from 4.36.0 to 4.37.0
build(deps): bump docker/login-action from 4.2.0 to 4.4.0
build(deps): bump github/codeql-action/init from 4.36.0 to 4.37.0
duanhaoqiang (1):
nvme: Enforce length to a multiple of 4 in get_log_page
g0l4 (1):
nvme: fix ignored interruption in format command
hris Patterson (1):
nvme-print-json: include vs for identify namespace
hsdhillo (4):
plugins/solidigm: Added Marketing Name Log support for Solidigm.
plugins/solidigm: Replace snprintf with asprintf
plugins/solidigm: Telemetry null check json object
plugins/solidigm: smart attribute C7 named dynamically, add desc for E7, E8
huahuang94 (1):
plugin/dera: update dera smart-log-add command output
innogritkenny (3):
plugins/innogrit: modify command opcode for eventlog and cdump
plugins/innogrit: Add vendor command get-eventlog and get-cdump
plugins/innogrit: modify for project tacoma
jaya.ganthan (1):
plugin/ocp: Added implementation for 0xC1 log page
jeff-lien-sndk (32):
wdc: Fix for get-drive-status wdc plugin command
sndk: Add support for new PCI device id
sndk: Add support for retrieving data area 4
sndk: Add support for the Sandisk UUID
linux: Add functions to set and clear etdas bit
nvme: Enable retrieving telemetry log data area 4
sndk: Use libnvme functions to set/clear etdas bit
ocp: Fixes to telemetry-string-log command
ocp: Update/Fix Man page for telemetry-string-log command
ocp: Fix telemetry string log json format parsing
ocp: Add support for retrieving telemetry data area 4
ocp: Update man page documentation for internal-log command
ocp: Update completions for ocp internal-log and telemetry-string-log
wdc: Fix SN861 capabilities in NVME-OF cases
sndk: Add drive-resize support for SN861 Drives
sndk: Support fabric attached SN861
sndk: Fix SN861 drive-resize capability
sndk: And support for new Sandisk devices
sndk: Add plugin command support for SN-861
plugins/sandisk: Use Correct PCI Vendor ID for SNESSD1 Drives
plugin/wdc: Fix UUID search for SN640 and SN655
plugins/ocp: Prevent Seg Fault during Telemetry log Parsing
ocp: Fix core dump during telemetry log decode
sndk: Add support for additional UUID
sndk: Add Clear Assert Capability to 2 Sandisk Drives
sndk: vs-internal-log command fixes and enhancements
ocp: handle C9 log page read fails
sndk: avoid buffer overflow when reading file name
id-ctrl: Add NVMe 2.3 id controller fields
sndk: Add support for new Sandisk drives
sndk: Add support for new Sandisk devices
telemetry-log: Fix telemetry-log invalid argument error
jeff-lien-wdc (32):
wdc: Add support for SN861 2nd pci device id
wdc: Fix UUID index fallback mechanism
wdc: Fix vs-smart-add-log Command for SN650 and SN655
plugins/wdc: Plugin fixes and updates
plugins/wdc: Add Debug Log Collection Support
wdc: Add support for the get-drive-status command to SN861
ocp: Fix timestamp displayed by fw-activate-history command
wdc: Fix timestamp displayed by vs-firmware-activate-history command
wdc: Review changes and build fixes
wdc: Fix compiler warning.
ocp: OCP 2.5 Telemetry DA 1 and 2 Parsing Updates
ocp: Update Plugin Version
wdc: Update and refactor the C0h log page parsing
wdc: OCP 2.5 Log Page Updates
wdc: Add Support for new SN-861 PCI device id
Add Support for new SN655 PCI Device ID
wdc: Add Support for SN5100S
ocp: Fixes for OCP 2.5 Telemetry DA1 FIFO Event Parsing
wdc: Fix for Reading WDC C2 Vendor Unique Log Page
wdc: Fixes for SNTMP Capabilities
ocp: Fixes for OCP 2.5 Telemetry Stats Parsing
ocp: Update ocp plugin version
sandisk: Add sandisk plugin
sndk: Add documentation for Sandisk plugin commands
ocp: Fix print_formatted_var_size_str and json_add_formatted_var_size_str
ocp: Fix Parsing of Statistics Snapshot FIFO Event
wdc: Fixed check for supported log pages
wdc: Fix for vs-smart-add-log wdc plugin command
wdc: Add support for cu_smart-log command on SN861
wdc: Add support for clear-assert-dump to SNTMP drives
sndk: Add sndk cu-smart-log plugin command
wdc: Fix uuid-index setting for WD 0xC2 log page
jinhua.huang (10):
plugins/memblaze: Add smart-log-add and latency-feature functions
nvme/plugins: fix mismatch operator
plugins/memblaze: code-format on leading indent and align
plugins/memblaze: code refactor on using cleanup_nvme_dev
plugins/memblaze: code refactor on applying __packed on more structs
plugins/memblaze: fix code mis-type error
plugins/memblaze: add performance stats
plugins/memblaze: fix a wrong id on smart-log-add
plugins/memblaze: update smart-log-add-x ids
plugins/memblaze: extract smart log add-x (0xCA) into separate file
junjin-reflect (1):
nvme-rpmb: print error message when setting auth key fails
kdedow (9):
plugins/ocp: SMART cloud log bug fixes.
plugins/ocp: OCP 2.0 field updates for SMART cloud log
plugins/ocp: Move SMART cloud log methods to separate file for reusability
plugins/ocp: Add SMART cloud log to solidigm plugin
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
kobyou (1):
plugins/ssstc: add a new plugin for SSSTC driver
lebao (1):
nvme-print-stdout: print frl1/2/3 values for zns id-ns
leonardo.da.cunha (6):
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.
plugins/ocp: Reorganized clear feature code for better reuse
plugins/solidigm: Added command to clear PCIe Correctable Error Counters according to OCP 2.0
plugins/ocp: changed command clear-pcie-correctable-error-counters to match OCP 2.0 spec. Fixed some function name typos.
plugins/solidigm: Added OCP 2.0 compatibility version command
letli (2):
tests: mock io_uring_get_probe
ioctl: get_log_page by nvme uring cmd
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
nick black (1):
build: require meson 0.50.0+
orbisai0security (2):
plugin: use snprintf for fixed-size formatting buffers
nvme-pring: add buffer-length checks
paumr (2):
doc: show where self-test results can be found
doc: added commit conventions to contribution guidelines
psykose (1):
fabrics: use '%' instead of SCOPE_DELIMITER
rick (2):
types: add kv opcodes
nvme-print: print KV command set page header
root (2):
nvme-cli: nvme gen-hostnqn use partition UUID on IBM
libnvme: core dump when running nvme persistent-event-log
sfindley102892 (1):
ocp: Add Statistics Identifier String Table Size to JSON
shankara (3):
nvme-print: Added missing logpage names in nvme_log_to_string function
plugins/solidigm: log page name extraction using nvme_log_to_string function
plugins/solidigm: Added re_sku_count smart atrribute
sunxing (1):
nvme-print: Use attrs_info as key for Zone Attributes Information
thieule742 (1):
types: Fix nvme_ns_id_desc packing
yjin (1):
plugins/sfx: sfx-nvme add expand-cap & dump evtlog cmd
zerone (1):
types: Update position of elbatm in struct nvme_copy_range{_f1}
zguo (1):
list-ctrl: limit to JSON and normal output
zhangxiaoyuan (1):
nvme: use argconfig_parse_seen to check conditions
наб (1):
docs: nvme-id-doman: dom{ia => ai}n
丁剑 (1):
log: high latency timestamp issue
胡玮文 (1):
nvme: fix virtual_mgmt cntlid parsing order
Tested: Verified id-ctrl, get-feature, and set-feature work via MCTP on target hardware. Logs: https://paste.googleplex.com/4798663367983104
Fusion-Link: http://fusion2/ci/kokoro/prod%3Agbmc%2Ffirmware-build%2Ffirmware%2Fredacted_gbmc_platforms/activity/b56710df-5e93-4477-87b3-346fa5d67d38
Google-Bug-Id: 524301009, 538280251
Change-Id: I472a1065ac36a32d18ff9f541e2ad0ac4ba2c901
Signed-off-by: Guangzong Chen <guangzong@google.com>
TAG=agy
CONV=231941b8-bb00-4012-9013-a0a6fc44d387
2 files changed