------------------------------------------------------------------- Fri Jul 21 12:54:56 UTC 2023 - Daniel Wagner - Label __pycache__ directory because meson 1.2.0 starts to install the precompiled files. ------------------------------------------------------------------- Thu Jul 06 09:40:01 UTC 2023 - Daniel Wagner - Update to version 1.5: * fabrics: Relax match on well known disc ctrl lookup * tree: Ignore NULL address pointer for phy slot lookup * fabrics: Filter discovery ctrls out during application context check * util: Add ignored error code * json: Use memory block allocated by realloc() instead printbuf * tree: Add PCI physical slot number for controller * tree: Use nvme_ipaddrs_eq() to compare IP addresses * fabrics: Add EADDRNOTAVAIL error mapping * fabrics: filter out subsystems with non-matching application string * libnvme: add 'application' setting to nvme_root * libnvme: add 'application' setting to the subsystem * util: rename ipaddrs_eq() to nvme_ipaddrs_eq() and make public. * util: Add ipaddrs_eq() to check whether two IP addresses are equal * ioctl: fix RAE bit on last Get Log Page command * fabrics: check genctr after getting discovery entries * fabrics: handle /dev/nvme-fabrics read failure * fabrics: fix potential invalid memory access in __nvmf_supported_option() * Python: Fix crash during garbage collection * mi: Add nvme_mi_ctrl_id to retrieve controller ID * ioctl: Explicitly initialize all members of struct nvme_ns_mgmt_args * ioctl: io management send, receive args fix * Python: Add NBFT support * tree: Fix offset argument check in nvme_bytes_to_lba * nbft: add NBFT v1.0 table support * types: Add IO command set specific field on nsmgmt * fabrics: Do not pass unsupported options to kernel * types: Add ns-mgmt host software specified fields * types.h: Add FDP related Status Code * tree: Fix argument check in nvme_bytes_to_lba ------------------------------------------------------------------- Fri Mar 31 15:38:35 UTC 2023 - Daniel Wagnrer - Update to version 1.4: * fabrics: Filter out invalid UUIDs from DMI * fabrics: Add define for DMI sysinfo * Print out correct TREQ strings for discovery * tree: fix generic device open failure * fabrics: add configuration option 'tls_key' * fabrics: add configuration option 'keyring' * linux: add key helper functions * nvme: add 'nvme_insert_tls_key()' function * linux: add nvme_lookup_keyring() * python: Change python option from combo to feature * types: add opcode field to error log page (TP4113) * python: Add setter property for controller DHCHAP Key * python: Remove redundant host.set_key() method * build, meson: Print option summary * Python: Add support for setting/getting Host DHCHAP key * Python: Add hostnqn_from_file() and hostid_from_file() * types: Update position of elbatm in struct nvme_copy_range{_f1} * doc: fix kernel-doc-check warning * python, meson: Assert that deps are present for -Dpython=true * python: Reformat SWIG input file * python test: Check there is no SIGSEGV during garbage collection * python: Return PyObject* from __str__() instead of a static char[] * python: Fix segmentation fault during garbage collection * build: Enable test in muon minimal build * build: Streamline workflows with nvme-cli * mi: Add nvme_mi_admin_get_log_page * ioctl: Set file descriptor in nvme_get_log_page() * fix endians * fabrics: Do not ignore one char whitespace when string sanitizing ------------------------------------------------------------------- Mon Jan 30 13:51:19 UTC 2023 - Daniel Wagner - Update to version 1.3: * Support added for Flexible Data Placement (TP4146) * Fabrics: added support for Persistent Discovery Controllers. * libnvme-mi added a quirk framework to workaround special behavior of certain devices * The python binding behaves more friendly in a threading environment by release the GIL on blocking calls. * Replaced 3the libsystemd dependency with libdbus * A lot of small fixes everywhere (leaks, wrong ordering of arguments, ...) - Update spec file * Project depends on meson >= 0.50.0 ------------------------------------------------------------------- Wed Nov 02 16:06:21 UTC 2022 - Daniel Wagner - Update to version 1.2: * Add more details for return code of MI admin cmds * Parse dhchap_host_key on controller level * Update json config schema for missing dhchap host key * fabrics: Add new TP8010 definitions * fabrics: Add nvmf_get_discovery_wargs() * fabrics: Duplicate strings when merging configs * fabrics: Filter out empty strings in add_argument() * fabrics: Use fallthrough statement * ioctl: Set log page offset for nvme_get_log_telemetry_host * json-schema: add dhchap_key details to host section * json: Enforce correctly formatted JSON config files * json: Verify JSON config file starts with an array * mi: Add Get Log Page helpers * mi: Add Identify function for secondary controller list * mi: Add Identify helper for ns-descs and primary-ctrl-caps * mi: Add firmware download and commit commands * mi: Add identify helper for nsid-capable Controller List * mi: Add identify helpers for namespace lists * mi: Add identify helpers for namespaces * mi: Allow Admin-message sized More Processing Required responses * mi: Distinguish MI status from NVMe (CDW3) status * mi: Fix C++ compiler errors * mi: Implement Format NVM command * mi: Implement Get & Set Features Admin commands * mi: Implement NS attach command and helpers * mi: Implement Namespace Management command and create/delete helpers * mi: Implement Sanitize command * mi: Init ctrl_id within xfer * mi: Introduce a helper for response status, unify values with ioctls * mi: Set log page offset for nvme_get_log_telemetry_host * mi: add nvme_mi_status_to_string() * mi: fix a memory leak in nvme_mi_open_mctp() * mi: fix get_log_page chunked offset check * nvme-tree: avoid segfault if auth keys are unavailable * python: Use nvmf_get_discovery_wargs() * tree: rename controller 'dhchap_key' to 'dhchap_ctrl_key' * types: Move enum nvme_data_tfr to types * util: Add LINE_MAX define * util: Add get feature length 2 API to support direction parameter * util: Add simple UUID type * util: Do not expose fallthrough defines - Make man page build conditiional. Install man page location has been fixed upstream. - Mark the Python directory own by the libnvme3-python package ------------------------------------------------------------------- Mon Oct 31 19:06:17 UTC 2022 - Bernhard Wiedemann - Use fixed manpage build date (boo#1047218) ------------------------------------------------------------------- Fri Aug 26 06:32:07 UTC 2022 - Thorsten Kukuk - Fix installation of manual pages to make them accessible ------------------------------------------------------------------- Tue Aug 2 18:55:31 UTC 2022 - Dirk Müller - Update to version 1.1: * Regenerate all documentation * json: fixup dhchap_ctrl_key definitions * fabrics: Fix build_options() return values * fabrics: sanitize dump-config output * Fix poll.h includes * build: Drop -nostdinc for LibreSSL header checks * ioctl: Honor rae in nvme_get_nsid_log * build: Add support to build against LibreSSL * rpmbuild: Enable 'make rpm' to build rpm pkgs #408 * mi: unify MI Get Log Page function with ioctl API * python: add missing ctrl attrs to Python bindings * mi-mctp: Add timeout support to MCTP transport * mi: Add maximum More Processing Required limit API * mi: Add endpoint get/set timeout API ------------------------------------------------------------------- Thu Jul 14 14:00:41 UTC 2022 - daniel.wagner@suse.com - Update to version v1.1-rc0: * update/cleanup of documentation * various build fixes * various fixes reported by coverity * 64-bit Reference Tags and TP-4068 changes * libnvme-mi: Introduce NVMe Managament Interface library ------------------------------------------------------------------- Fri Apr 08 17:04:22 UTC 2022 - Daniel Wagner - Update to version 1.0: * tree: Remove default port setting for TCP and RDMA ports * tree: add 'f_args' argument to pass user data to the filter function * tree: remove 'ctrl_get_ana_state()' * tree: add namespace path iterators * tree: filter out namespaces * tree: update nvme_scan_filter_t usage ------------------------------------------------------------------- Fri Apr 01 13:22:12 UTC 2022 - Daniel Wagner - Update to version 1.0-rc8: * types: Add support for get log - MI Command Supported * types: Add new Identify constant * types: Update persistent event entry struct added new fields * types: Add Host Initiated Data Gen Number to telemetry log struct * tree: always allocate config file in nvme_read_config() * tree: rework nvme_scan_subsystem() * tree: make subsystem name mandatory in nvme_scan_ctrl() * tree: move nvme_init_subsystem() into nvme_lookup_subsystem() * tree: do not return error when filtering out subsystems * tree: add debugging messages during scanning * tree: Handle NULL subsysname in nvme_scan_ctrl() * tree: Fix subsystem initialization in nvme_scan_ctrl() * tree: Fix leaking 'name' in nvme_subsystem_lookup_namespace() * tree: Avoid dereferencing nvme_subsystem_t before its check for NULL * tree: Clarify NULL return values from nvme_get_attr() * fabrics: Invoke nvmf_dim() with provided tas argument * fabrics: add 'nvmf_update_config()' * fabrics: Avoid out of bounds string chomping * fabrics: Free old traddr in nvmf_add_ctrl * fabrics: update log level for write failures * fabrics: Streamlining documentation * fabrics: Fix leaking ctrl in nvmf_connect_disc_entry() * fabrics: Add missing break in a switch * ioctl: Remove attribute packed and alignedof for args structs * ioctl: Align arguments indentation with braces * json: fix endless loop scanning for controllers * Remove nvme_init_id_ns * Add lbstm support for create-ns * documentation updates ------------------------------------------------------------------- Fri Mar 18 19:08:52 UTC 2022 - Daniel Wagner - Update to version 1.0-rc7: * linux: fixup log page offset in nvme_get_log_page() * tree: Add support for default trsvcid for all controllers (bsc#1195858) * tree: fixup coredump during nvme discover ------------------------------------------------------------------- Fri Mar 11 17:58:36 UTC 2022 - Daniel Wagnrer - Update to version 1.0-rc6: * tree: add nvme_ctrl_get_ana_state() (bsc#1195938) * tree: link paths to namespaces in nvme_subsystem_scan_namespace() (bsc#1195938) * ioctl.h: ns list bug fix (wrong cns value) * types.h: Key Value Command Set Identifier added (NVME_CSI_KV) * types: fix status code type bug (wrong masking) ------------------------------------------------------------------- Tue Mar 8 09:30:25 UTC 2022 - Daniel Wagner - Update License information. The library is released under LGPL-2.1-or-later and not LGPL-2.1-only. ------------------------------------------------------------------- Thu Mar 03 18:54:35 UTC 2022 - Daniel Wagner - Update to version 1.0-rc5: * ioctl: Set lsp to action in nvme_get_log_persistent_event (bsc#1196121) * tree: Ignore traddr case in nvme_lookup_ctrl() (bsc#1194025) * fabrics: Do not swap bytes for system uuid (bsc#1196565) * documentation updates ------------------------------------------------------------------- Tue Feb 22 17:40:44 UTC 2022 - Daniel Wagner - Update to version 1.0-rc4: * fabrics: add default port number for NVMe/TCP I/O controllers * linux: Update size when telemetry controller initiated data is unavailable * add cdw13 for set_feature_args structure * Add support for TP8010 * Documentation cleanups ------------------------------------------------------------------- Fri Feb 11 13:29:54 UTC 2022 - Daniel Wagner - Update to version v1.0-rc3: * Properly create manuals/documentation * Fix memleaks in __nvme_free_ns() and nvme_scan_subsystem() * nvme: get log domain id included in Log Specific Identifier * nvme: Add nulbaf(Number of Unique Capability LBA Formats) field on nvmd_id_ns * ioctl: Add identify ioctl for CNS 09h, 0Ah * nvme: Add Enhanced Controller Meta Data(FID: 0x7D) * nvme: Add Supported Capacity Configuration List log page(LID: 0x11) * tree: do not set dhchap_key to 'none' * tree: restart controller lookup * tree: fixup memory leak in nvme_scan_ctrl() * Rename nvme_path_get_subsystem() * Remove nvme_reset_topology() - Use precompiled documentation instead regenerating it ------------------------------------------------------------------- Tue Feb 01 11:26:39 UTC 2022 - Daniel Wagner - Update to version 1.0~2: * Add fabrics config option 'tls' * Logging infrastructure reworked (API break) * Changed argument structs layout (API break) * Changed scan API (API break) * Fixed ctrl_loss_tmo handling concerning values of '-1' * Various build fixes ------------------------------------------------------------------- Wed Jan 19 11:13:42 UTC 2022 - Daniel Wagner - Remove Provide for python package. - Remove explicit tar file name for setup step. ------------------------------------------------------------------- Tue Jan 18 14:26:47 UTC 2022 - Daniel Wagner - Use osc_scm to manage upstream input source. ------------------------------------------------------------------- Tue Jan 18 12:53:02 UTC 2022 - Daniel Wagner - Fix Source URL ------------------------------------------------------------------- Fri Jan 14 17:54:47 UTC 2022 - Daniel Wagner - Initial package creation for libnvme