Releases: linux-nvme/libnvme
v1.0
v1.0 Release Candidate 8
After last -rc7 I though we will have a release by now. But although we fixed a bunch of small issues, the chances are too many too big. Also Hannes and I discussed the filter API which is not flexible enough in our opinion. As this is an API change we rather have sorted this out now and not having regrets not getting it right (or at least better than now). Hence another RC release.
Again on the documentation front there were several contributions to get in better shape. This is an ongoing tasks but it really looks good.
As mentioned we have small bug fixes all over the place, thanks to Tomas, Martin G., Margin B., Brandon and Hannes!
Hannes was also busy fixing the scanning algorithm and Jeff extended support to around get log pages/MI.
Arunpandian J (3):
fabrics: Streamlining documentation
ioctl: Align arguments indentation with braces
test: print test logs for pass case
Boris Glimcher (3):
CI: fixing dist packaging error
readme: Add github badges
ci: add code coverage
Brandon Paupore (2):
Add lbstm support for create-ns
Remove nvme_init_id_ns
Daniel Wagner (4):
fabrics: Avoid out of bounds string chomping
fabrics: Free old traddr in nvmf_add_ctrl
ioctl: Remove attribute packed and alignedof for args structs
doc: Regenerate all documentation
Hannes Reinecke (11):
meson: build display-tree example
tree: add debugging messages during scanning
tree: do not return error when filtering out subsystems
json: fix endless loop scanning for controllers
fabrics: add 'nvmf_update_config()'
libnvme: export 'nvme_lookup_ctrl()'
tree: move nvme_init_subsystem() into nvme_lookup_subsystem()
tree: make subsystem name mandatory in nvme_scan_ctrl()
tree: rework nvme_scan_subsystem()
Update function prototype documentation
tree: always allocate config file in nvme_read_config()
Jeff Lien (4):
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
Martin Belanger (1):
fabrics: Invoke nvmf_dim() with provided tas argument
Martin George (1):
fabrics: update log level for write failures
Tomas Bzatek (8):
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()
v1.0 Release Canditate 7
This week, we have Hannes addresing a few glitches during NVMeoF testing. Boris
keeps the good work up on the CI front while I was trying to cleanup a few small
things in the meson configuration (but introduced a bug, fixed though). Overall,
pretty calm on this front.
Boris Glimcher (2):
dist: add missing BuildRequires to spec file
rpm: add makefile rule for rpms
Daniel Wagner (4):
fabrics: Allow to change sysconfdir for hostnqn and hostid file
tree: Add support for default trsvcid for all controllers
fabrics: Correctly stringify default hostnqn and hostid paths
doc: Provide SYSCONFDIR without quotes
Hannes Reinecke (2):
tree: fixup coredump during nvme discover
linux: fixup log page offset in nvme_get_log_page()
v1.0 Release Canditate 6
Steven address an issue which I introduced in -rc5 (status code). Hannes got the ANA
status fixed (was a missing commit from v1.7). While Boris was extremly busy getting
our CI build ready for auto deploy to PyPI. So overall a calm week. I think we are
very close to a the initial v1.0 release.
Arunpandian J (1):
types: Add missing doc field description
Boris Glimcher (4):
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
Daniel Wagner (1):
doc: Regenerate all documentation
Hannes Reinecke (3):
Document filter functions
tree: link paths to namespaces in nvme_subsystem_scan_namespace()
tree: add nvme_ctrl_get_ana_state()
Steven Seungcheol Lee (3):
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)
v1.0 Release Canditate 5
Things are calming down, which indicates that we are slowly reaching the 1.0 release.
Arunpandian was busy again adding a lot of documentation and fixing a few small issues in utils.
Then there are bunch of build fixes but nothing really dangerous.
Wendy fixed PEL and I updated 'gen-hostnqn' to hand out the correct UUID. Also ported
a missing patch from the monolithic branch which made sure traddr are case compared
ignoring the case.
Arunpandian J (8):
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
Boris Glimcher (4):
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
Daniel Wagner (6):
fabrics: Do not swap bytes for system uuid
tree: Ignore traddr case in nvme_lookup_ctrl()
build: Depend on libssl when using the fallback dependency
linux: Include private.h
linux: Add log.h back
doc: Regenerate all documentation
Klaus Jensen (1):
meson: do not leak internal include directories
Martin Belanger (1):
Move ccan definitions out of public headers.
Wen Xiong (1):
ioctl: Set lsp to action in nvme_get_log_persistent_event
v1.0 Release Canditate 4
In this release candidate we have a lot of documentation updates. Arunpandian is busy adding missing documentation. Thanks a lot!
Then there were a few small bug fixes and one missing backport from the monolithic branch. A few API changes in this candidate again, but I hope we slowly have these sorted out.
The biggest change is the inclusion of the TP8010 support which is mostly just new code so it should not regress (famous last words, I know).
Akhilesh RN (1):
linux: Update size when telemetry controller initiated data is unavailable
Arunpandian J (8):
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
Daniel Wagner (5):
log: Allow nvme_msg usage with invalid root pointer
fabrics: add default port number for NVMe/TCP I/O controllers
doc: Do not precomple HTML doc anymore
doc: Regenerate all documentation
build: Use boolean type for docs-build default
Hanumanthu H (1):
add cdw13 for set_feature_args structure
Jeff Lien (1):
linux: Change nvme_get_log_page to use nvme_get_log_args parm
Martin Belanger (8):
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
Sami Waheed (1):
Update ioctl.h
v1.0 Release Candidate 3
This release candidate brings mostly cleanups and a bunch of bug fixes. The main change is that
we are now properly creating the precompiled documentation. Again some small API changes but
nothing big this time. It looks like things are calming down.
Please keep testing and check if the API is okay. After the v1.0 release things will be way harder
to change.
Arunpandian J (2):
nvme: Add Supported Capacity Configuration List log page(LID: 0x11)
nvme: Add Enhanced Controller Meta Data(FID: 0x7D)
Daniel Wagner (12):
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
build: Make CI build fail on warnings
build: Add kernel-doc CI build
tree: Remove dead !LIBUUID code
tree: Remove CONFIG_JSONC ifdefs
tree: Fix memleaks in __nvme_free_ns() and nvme_scan_subsystem()
build: make Python memory allocations valgrind friendly
Hannes Reinecke (25):
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
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
tree: do not set dhchap_key to 'none'
tree: do not print function twice
json: remove wrapper definitions
Make JSON-C mandatory during built
tree: add nvme_dump_tree()
Jeff Lien (1):
linux: Add size and data area parm to nvme_get_telemetry_log
Martin Belanger (1):
fix license info
Steven Seungcheol Lee (6):
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
v1.0 Release Canditate 2
Another release candidate for libnvme. We are still moving bits around in the API and hence we need a bit more time to stabilize all things. Don't expect a release next week as Hannes already told me that he has some more cleanup patches in the queue. Anyway, overall I think we are moving into the right direction.
Please give it a test and report the bugs you find. Thanks!
Arunpandian J (1):
Clean up Patch for types.h, ioctl.h
Daniel Wagner (6):
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
Hannes Reinecke (10):
fabrics: Remove nvmf_add_ctrl_opts()
fabrics: Update prototype documentation
fabrics: remove documentation for nvmf_add_ctrl_opts()
Update README.md
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
Rework nvme_scan_filter()
v1.0 Release Canditate 1
Busy week, we got a bunch of cleanups and bug fixes. The API has changed slightly due
to the added Media Unit Status log page feature and dropping the disable_sqflow
argument for nvmf_add_ctrl.
Here the shortlog:
Arunpandian J (1):
nvme: Add Media Unit Status log page(LID: 0x10)
Daniel Wagner (3):
linux: Include missing stddef.h
src: Use PRIu64 format specifier for uint64 types
ioctl: Initialize all members in nvme_get_log_args
Hannes Reinecke (5):
Implement nvme_errno_to_string()
fabrics: do not treat ctrl_loss_tmo values of '-1' as invalid
fabrics: add fabrics config option 'tls'
tree: only open controller device node if required
fabrics: kill 'disable_sqflow' argument to nvmf_add_ctrl()
Martin Belanger (1):
Define ccan as a static library
Steven Seungcheol Lee (2):
meson: ssl version checking allowed version only
util: modify flbas rsvd bits to be used
Tomas Bzatek (2):
docs: Fix a typo in README.md
types: TP8013 and TP8014 doc strings updates
v1.0 Release Canditate 0
This is a pre release for the upcoming v1.0 release.
The API should be fairly stable from now on but some things might still change until the v1.0 release. Also there are still some hickups but nothing serious which prevents broader testing. So please give it a go and report bugs you find.
Thanks!