]> www.infradead.org Git - users/sagi/libnvme.git/log
users/sagi/libnvme.git
3 years agoMerge pull request #264 from igaw/fix-system-uuid
Daniel Wagner [Tue, 1 Mar 2022 13:51:46 +0000 (14:51 +0100)]
Merge pull request #264 from igaw/fix-system-uuid

fabrics: Do not swap bytes for system uuid

3 years agofabrics: Do not swap bytes for system uuid
Daniel Wagner [Tue, 1 Mar 2022 09:03:23 +0000 (10:03 +0100)]
fabrics: Do not swap bytes for system uuid

The kernel is taking care of swapping the system uuid bytes since
f1d8e614d74b ("drivers/firmware/dmi_scan.c: check dmi version when get
system uuid"). Hence we should not swap them again. Instead just read
/sys/class/dmi/id/product_uuid and store the bytes directly into the
system_uuid buffer.

Signed-off-by: Daniel Wagner <dwagner@suse.de>
3 years agoMerge pull request #266 from glimchb/actionbranch
Daniel Wagner [Tue, 1 Mar 2022 13:40:15 +0000 (14:40 +0100)]
Merge pull request #266 from glimchb/actionbranch

CI: rename branch main to master

3 years agoCI: rename branch main to master
Boris Glimcher [Tue, 1 Mar 2022 12:49:22 +0000 (14:49 +0200)]
CI: rename branch main to master

Signed-off-by: Boris Glimcher <Boris.Glimcher@emc.com>
3 years agoMerge pull request #257 from glimchb/setuptools
Daniel Wagner [Tue, 1 Mar 2022 12:39:35 +0000 (13:39 +0100)]
Merge pull request #257 from glimchb/setuptools

 pyproject.toml instead of setup.py for new packaging

3 years agoWorkflow: temporary disable publish to PyPI, starting with TestPyPI
Boris Glimcher [Tue, 1 Mar 2022 10:14:21 +0000 (12:14 +0200)]
Workflow: temporary disable publish to PyPI, starting with TestPyPI

Signed-off-by: Boris Glimcher <Boris.Glimcher@emc.com>
3 years agoMerge pull request #259 from Arunpandian15/fix_sct
Daniel Wagner [Tue, 1 Mar 2022 09:44:35 +0000 (10:44 +0100)]
Merge pull request #259 from Arunpandian15/fix_sct

types: status code type value update as per NVMe specification

3 years agoMerge pull request #262 from Arunpandian15/util_01
Daniel Wagner [Tue, 1 Mar 2022 09:30:48 +0000 (10:30 +0100)]
Merge pull request #262 from Arunpandian15/util_01

util: Add status code values in geneic status to errono conversion

3 years agoutil: Add status code values in generic status to errno conversion
Arunpandian J [Tue, 1 Mar 2022 07:15:46 +0000 (12:45 +0530)]
util: Add status code values in generic status to errno conversion

Signed-off-by: Arunpandian J <apj.arun@samsung.com>
3 years agoMerge pull request #261 from martin-belanger/move-ccan-out-of-public-headers
Daniel Wagner [Mon, 28 Feb 2022 18:03:58 +0000 (19:03 +0100)]
Merge pull request #261 from martin-belanger/move-ccan-out-of-public-headers

Move ccan definitions out of public headers.

3 years agoMove ccan definitions out of public headers.
Martin Belanger [Mon, 28 Feb 2022 16:26:07 +0000 (11:26 -0500)]
Move ccan definitions out of public headers.

Signed-off-by: Martin Belanger <martin.belanger@dell.com>
3 years agoAdd workflow to publish to PyPI and TestPyPI
Boris Glimcher [Mon, 28 Feb 2022 07:34:06 +0000 (09:34 +0200)]
Add workflow to publish to PyPI and TestPyPI

Signed-off-by: Boris Glimcher <Boris.Glimcher@emc.com>
3 years agopyproject.toml instead of setup.py for new packaging
Boris Glimcher [Sun, 27 Feb 2022 19:36:04 +0000 (21:36 +0200)]
pyproject.toml instead of setup.py for new packaging

This allows to build with meson and package for Pypi

Build like this:
    python -m build

Signed-off-by: Boris Glimcher <Boris.Glimcher@emc.com>
3 years agotypes: status code type value update as per NVMe specification
Arunpandian J [Mon, 28 Feb 2022 10:52:22 +0000 (16:22 +0530)]
types: status code type value update as per NVMe specification

Signed-off-by: Arunpandian J <apj.arun@samsung.com>
3 years agoMerge pull request #258 from Arunpandian15/types_doc_28
Daniel Wagner [Mon, 28 Feb 2022 09:28:20 +0000 (10:28 +0100)]
Merge pull request #258 from Arunpandian15/types_doc_28

types: Add missing doc for ZNS, NVMe OF, NVMe command set

3 years agotypes: Add missing doc for ZNS, NVMe OF, NVMe command set
Arunpandian J [Mon, 28 Feb 2022 05:55:02 +0000 (11:25 +0530)]
types: Add missing doc for ZNS, NVMe OF, NVMe command set

Signed-off-by: Arunpandian J <apj.arun@samsung.com>
3 years agoMerge pull request #256 from Arunpandian15/doc_types_25
Daniel Wagner [Fri, 25 Feb 2022 12:22:12 +0000 (13:22 +0100)]
Merge pull request #256 from Arunpandian15/doc_types_25

types: Add doc section for enum fields

3 years agotypes: Add doc section for enum fields
Arunpandian J [Fri, 25 Feb 2022 11:08:53 +0000 (16:38 +0530)]
types: Add doc section for enum fields

Signed-off-by: Arunpandian J <apj.arun@samsung.com>
3 years agoMerge pull request #255 from Arunpandian15/types_doc_24
Daniel Wagner [Thu, 24 Feb 2022 11:59:12 +0000 (12:59 +0100)]
Merge pull request #255 from Arunpandian15/types_doc_24

types: Add doc field for admin opcodes, FIDs, LIDs, Identify commands

3 years agotypes: Add doc field for admin opcodes, FIDs, LIDs, Identify commands
Arunpandian J [Thu, 24 Feb 2022 11:03:31 +0000 (16:33 +0530)]
types: Add doc field for admin opcodes, FIDs, LIDs, Identify commands

Signed-off-by: Arunpandian J <apj.arun@samsung.com>
3 years agoMerge pull request #254 from Arunpandian15/mi_types
Daniel Wagner [Wed, 23 Feb 2022 15:12:31 +0000 (16:12 +0100)]
Merge pull request #254 from Arunpandian15/mi_types

types: All MI command related structure doc field update

3 years agotypes: All MI command related structure doc field update
Arunpandian J [Wed, 23 Feb 2022 08:40:52 +0000 (14:10 +0530)]
types: All MI command related structure doc field update

Signed-off-by: Arunpandian J <apj.arun@samsung.com>
3 years agobuild: Use boolean type for docs-build default v1.0-rc4
Daniel Wagner [Tue, 22 Feb 2022 17:09:45 +0000 (18:09 +0100)]
build: Use boolean type for docs-build default

muon complains about the type used for the default value. As it a
boolean type use a boolean as value instead of a string value.

Signed-off-by: Daniel Wagner <dwagner@suse.de>
3 years agodoc: Regenerate all documentation
Daniel Wagner [Tue, 22 Feb 2022 16:35:32 +0000 (17:35 +0100)]
doc: Regenerate all documentation

Prepare for next release candiate.

Signed-off-by: Daniel Wagner <dwagner@suse.de>
3 years agodoc: Do not precomple HTML doc anymore
Daniel Wagner [Tue, 22 Feb 2022 16:45:58 +0000 (17:45 +0100)]
doc: Do not precomple HTML doc anymore

The HTML part is not ready yet. Let's remove the precompiled HTML doc.

Signed-off-by: Daniel Wagner <dwagner@suse.de>
3 years agoMerge pull request #253 from igaw/port-default-port-for-discovery
Daniel Wagner [Tue, 22 Feb 2022 15:45:42 +0000 (16:45 +0100)]
Merge pull request #253 from igaw/port-default-port-for-discovery

fabrics: add default port number for NVMe/TCP I/O controllers

3 years agofabrics: add default port number for NVMe/TCP I/O controllers
Daniel Wagner [Tue, 22 Feb 2022 15:06:52 +0000 (16:06 +0100)]
fabrics: add default port number for NVMe/TCP I/O controllers

As per section 7.4.9.3 "Transport Service Identifier" of the NVMe over
Fabrics 1.1 specification, the default IANA port number for a NVMe/TCP
discovery controller is 8009. But at the same time, it also clearly
states that NVMe/TCP I/O controllers should not use TCP port number
8009, but may instead use 4420 as the default here.

So make sure to fill these values appropriately, and pass it down.

Signed-off-by: Martin George <marting@netapp.com>
[dwagner: backport from monolithic branch]
Signed-off-by: Daniel Wagner <dwagner@suse.de>
3 years agoMerge pull request #252 from Arunpandian15/doc_mi
Daniel Wagner [Tue, 22 Feb 2022 14:07:43 +0000 (15:07 +0100)]
Merge pull request #252 from Arunpandian15/doc_mi

types: doc field update for NVM commands, Feature Identifiers

3 years agotypes: doc field update for NVM commands, Feature Identifiers
Arunpandian J [Tue, 22 Feb 2022 04:39:08 +0000 (10:09 +0530)]
types: doc field update for NVM commands, Feature Identifiers

Signed-off-by: Arunpandian J <apj.arun@samsung.com>
3 years agoMerge pull request #248 from igaw/tp8010-support-refactored
Daniel Wagner [Mon, 21 Feb 2022 16:06:47 +0000 (17:06 +0100)]
Merge pull request #248 from igaw/tp8010-support-refactored

TP8010 support refactored

3 years agofabrics: Add support to register with a DC
Martin Belanger [Fri, 18 Feb 2022 09:42:49 +0000 (10:42 +0100)]
fabrics: Add support to register with a DC

This adds support for the TP8010 by introducing nvmf_registration_ctlr
function which performs the registration task with a Discovery
Controller.

Signed-off-by: Martin Belanger <martin.belanger@dell.com>
[dwagner: refactored, reformated, udpated documentation,
          moved nvme_fetch_cntrltype_dctype_from_id here]
Signed-off-by: Daniel Wagner <dwagner@suse.de>
3 years agoioctl: Add nvme_dim_send()
Martin Belanger [Fri, 18 Feb 2022 09:07:11 +0000 (10:07 +0100)]
ioctl: Add nvme_dim_send()

Add nvme_dim_send() to send Discovery Information Managements commands.

Signed-off-by: Martin Belanger <martin.belanger@dell.com>
[dwagner: reorder args arguments, rename function]
Signed-off-by: Daniel Wagner <dwagner@suse.de>
3 years agoutil: Add key-value helpers and OS identification tools
Martin Belanger [Thu, 17 Feb 2022 15:16:11 +0000 (16:16 +0100)]
util: Add key-value helpers and OS identification tools

Key value helpers and also the OS identification are used for
implementing TP8010 support.

Signed-off-by: Martin Belanger <martin.belanger@dell.com>
[dwagner: refactoring, reformating]
Signed-off-by: Daniel Wagner <dwagner@suse.de>
3 years agotypes: Add Discovery Information Managment types
Martin Belanger [Thu, 17 Feb 2022 16:33:50 +0000 (17:33 +0100)]
types: Add Discovery Information Managment types

Add Discovery Information Management related types for TP8010.

Signed-off-by: Martin Belanger <martin.belanger@dell.com>
[dwagner: renaming, adding documation and reformating]
Signed-off-by: Daniel Wagner <dwagner@suse.de>
3 years agotree: Add cntrltype and dctype to the controller object
Martin Belanger [Wed, 16 Feb 2022 15:11:05 +0000 (10:11 -0500)]
tree: Add cntrltype and dctype to the controller object

The Discovery Controller Type (dctype) is a new attribute defined
in TP8010. This new attribute, as well as the existing Controller
Type (cntrltype) attributes will now be exposed through the sysfs
starting with kernel 5.18. For older kernels, the cntrltype and
dctype must be retrieved by performing a Identify command.

Signed-off-by: Martin Belanger <martin.belanger@dell.com>
[dwagner: Removed nvme_fetch_cntrltype_dctype_from_id]
Signed-off-by: Daniel Wagner <dwagner@suse.de>
3 years agoMerge pull request #250 from Arunpandian15/types_h_doc_21
Daniel Wagner [Mon, 21 Feb 2022 11:01:55 +0000 (12:01 +0100)]
Merge pull request #250 from Arunpandian15/types_h_doc_21

types.h: doc update for ZNS structures

3 years agoMerge pull request #246 from igaw/fix-nvme_msg
Daniel Wagner [Mon, 21 Feb 2022 10:53:58 +0000 (11:53 +0100)]
Merge pull request #246 from igaw/fix-nvme_msg

log: Allow nvme_msg usage with invalid root pointer

3 years agolog: Allow nvme_msg usage with invalid root pointer
Daniel Wagner [Thu, 17 Feb 2022 09:25:31 +0000 (10:25 +0100)]
log: Allow nvme_msg usage with invalid root pointer

24ac082f481d ("Add 'nvme_root_t' argument to nvme_msg()") and
19b12831a9ec ("Move global logging variables into nvme_root_t") moved
the logging controller knobs into the root object. In case the pointer
is invalid we should not try to use it. Instead just bailing out just
log the line.

Signed-off-by: Daniel Wagner <dwagner@suse.de>
3 years agotypes.h: doc update for ZNS structures
Arunpandian J [Mon, 21 Feb 2022 07:06:33 +0000 (12:36 +0530)]
types.h: doc update for ZNS structures

Signed-off-by: Arunpandian J <apj.arun@samsung.com>
3 years agoMerge pull request #247 from Arunpandian15/types_h_doc_field
Daniel Wagner [Fri, 18 Feb 2022 13:57:58 +0000 (14:57 +0100)]
Merge pull request #247 from Arunpandian15/types_h_doc_field

types.h: Add missing documentation for all the log pages

3 years agoMerge pull request #249 from AkhileshRN/telemetry_ctlr
Daniel Wagner [Fri, 18 Feb 2022 13:55:58 +0000 (14:55 +0100)]
Merge pull request #249 from AkhileshRN/telemetry_ctlr

Fix to update size for telemetry log page when telemetry controller initiated data is unavailable.

3 years agolinux: Update size when telemetry controller initiated data is unavailable
Akhilesh RN [Fri, 18 Feb 2022 13:41:10 +0000 (19:11 +0530)]
linux: Update size when telemetry controller initiated data is unavailable

Fix to update size for telemetry log page when telemetry controller
initiated data is unavailable.

3 years agotypes: Add DCTYPE to nvme_id_psd
Martin Belanger [Thu, 17 Feb 2022 13:09:07 +0000 (14:09 +0100)]
types: Add DCTYPE to nvme_id_psd

TP8010 introduced Discovery Controller Type (DCTYPE) to the
Identify Controller data structure. Add the new field.

Signed-off-by: Martin Belanger <martin.belanger@dell.com>
Signed-off-by: Daniel Wagner <dwagner@suse.de>
3 years agotree: Add host symbolic name
Martin Belanger [Tue, 15 Feb 2022 20:54:38 +0000 (15:54 -0500)]
tree: Add host symbolic name

The host symbolic name was introduced in TP8010. It is used for
explicit registration with discovery controllers using the
discovery information management (DIM) command.x

Signed-off-by: Martin Belanger <martin.belanger@dell.com>
3 years agopython: Add dump_config
Martin Belanger [Fri, 18 Feb 2022 09:10:15 +0000 (10:10 +0100)]
python: Add dump_config

Add support to the Python binding to dump the JSON config by hooking
up nvme_dump_config.

Signed-off-by: Martin Belanger <martin.belanger@dell.com>
Signed-off-by: Daniel Wagner <dwagner@suse.de>
3 years agotypes.h: Add missing documentaion for all the log pages
Arunpandian J [Fri, 18 Feb 2022 07:22:10 +0000 (12:52 +0530)]
types.h: Add missing documentaion for all the log pages

Signed-off-by: Arunpandian J <apj.arun@samsung.com>
3 years agoMerge pull request #245 from Arunpandian15/cleanup_17
Daniel Wagner [Thu, 17 Feb 2022 09:21:36 +0000 (10:21 +0100)]
Merge pull request #245 from Arunpandian15/cleanup_17

Cleanup patch for linux.h, log.h, tree.h

3 years agotree: Add missing documentation
Arunpandian J [Thu, 17 Feb 2022 09:10:50 +0000 (10:10 +0100)]
tree: Add missing documentation

Add missing documentation to all functions declarations.
While at it also fix whitespace issues and intentions levels

Signed-off-by: Arunpandian J <apj.arun@samsung.com>
[dwagner: added commit messages, extended the docs bits]
Signed-off-by: Daniel Wagner <dwagner@suse.de>
3 years agolog: Fix whitespacing in documentation
Arunpandian J [Thu, 17 Feb 2022 09:10:37 +0000 (10:10 +0100)]
log: Fix whitespacing in documentation

Make the documentation consistent with the other header files.

Signed-off-by: Arunpandian J <apj.arun@samsung.com>
[dwagner: added commit messages]
Signed-off-by: Daniel Wagner <dwagner@suse.de>
3 years agolinux: Streamline documentation
Arunpandian J [Thu, 17 Feb 2022 06:23:40 +0000 (11:53 +0530)]
linux: Streamline documentation

Make the documetation consistent with the other header files.
While at it also fix whitespace issues and intentions levels

Signed-off-by: Arunpandian J <apj.arun@samsung.com>
[dwagner: added commit messages, extended the docs bits]
Signed-off-by: Daniel Wagner <dwagner@suse.de>
3 years agoMerge pull request #242 from Arunpandian15/doc_update
Daniel Wagner [Wed, 16 Feb 2022 15:10:34 +0000 (16:10 +0100)]
Merge pull request #242 from Arunpandian15/doc_update

ioctl.h: Add description for fields used

3 years agoioctl.h: Add description for fields used
Arunpandian J [Wed, 16 Feb 2022 09:50:42 +0000 (15:20 +0530)]
ioctl.h: Add description for fields used

Signed-off-by: Arunpandian J <apj.arun@samsung.com>
3 years agoMerge pull request #234 from jeffreyalien/uuidx-parm
Daniel Wagner [Wed, 16 Feb 2022 07:39:44 +0000 (08:39 +0100)]
Merge pull request #234 from jeffreyalien/uuidx-parm

[libnvme] Add uuidx parm to get log page API

3 years agolinux: Change nvme_get_log_page to use nvme_get_log_args parm
Jeff Lien [Tue, 15 Feb 2022 22:51:09 +0000 (16:51 -0600)]
linux: Change nvme_get_log_page to use nvme_get_log_args parm

Combined nvme_get_log_page and nvme_get_log_page_padded into
one function

Signed-off-by: Jeff Lien <jeff.lien@wdc.com>
3 years agoMerge pull request #237 from Arunpandian15/cleanup_Description
Daniel Wagner [Tue, 15 Feb 2022 13:50:22 +0000 (14:50 +0100)]
Merge pull request #237 from Arunpandian15/cleanup_Description

types: Add doc description for fields used

3 years agoMerge pull request #239 from hanumanthuh/master
Daniel Wagner [Tue, 15 Feb 2022 09:13:00 +0000 (10:13 +0100)]
Merge pull request #239 from hanumanthuh/master

add cdw13 for set_feature_args structure

3 years agoMerge pull request #238 from samiWaheed/master
Daniel Wagner [Tue, 15 Feb 2022 09:02:21 +0000 (10:02 +0100)]
Merge pull request #238 from samiWaheed/master

Corrected FW log page used  in nvme_get_log_fw_slot

3 years agoadd cdw13 for set_feature_args structure
Hanumanthu H [Tue, 15 Feb 2022 05:23:40 +0000 (10:53 +0530)]
add cdw13 for set_feature_args structure

3 years agoUpdate ioctl.h
Sami Waheed [Mon, 14 Feb 2022 22:27:47 +0000 (14:27 -0800)]
Update ioctl.h

3 years agotypes: Added doc description for fields used
Arunpandian J [Mon, 14 Feb 2022 12:10:31 +0000 (17:40 +0530)]
types: Added doc description for fields used

Signed-off-by: Arunpandian J <apj.arun@samsung.com>
3 years agoMerge pull request #233 from igaw/fix-mem-leak v1.0-rc3
Daniel Wagner [Fri, 11 Feb 2022 12:52:16 +0000 (13:52 +0100)]
Merge pull request #233 from igaw/fix-mem-leak

tree: Fix memleaks in __nvme_free_ns() and nvme_scan_subsystem()

3 years agobuild: make Python memory allocations valgrind friendly
Daniel Wagner [Fri, 11 Feb 2022 12:45:57 +0000 (13:45 +0100)]
build: make Python memory allocations valgrind friendly

When testing with

  meson test -C .build --wrap='valgrind --leak-check=full'

the Python binding will trigger 'Invalid read of size 4' warnings.
Tell Python to use malloc directly for all memory allocation which can
be properly traced by valgrind.

Signed-off-by: Daniel Wagner <dwagner@suse.de>
3 years agotree: Fix memleaks in __nvme_free_ns() and nvme_scan_subsystem()
Daniel Wagner [Fri, 11 Feb 2022 12:20:14 +0000 (13:20 +0100)]
tree: Fix memleaks in __nvme_free_ns() and nvme_scan_subsystem()

valgrind reports that we are leaking memory in __nvme_free_ns() and
nvme_scan_subsystem(). Free ns->generic_name and path which makes
valgrind also happy.

Signed-off-by: Daniel Wagner <dwagner@suse.de>
3 years agoMerge pull request #230 from sc108-lee/fix/io_cmd
Daniel Wagner [Fri, 11 Feb 2022 10:41:54 +0000 (11:41 +0100)]
Merge pull request #230 from sc108-lee/fix/io_cmd

ioctl: nvme_io_args.dspec(Directive Specific) value is 16 bits

3 years agoioctl: nvme_io_args.dspec(Directive Specific) value is 16 bits
Steven Seungcheol Lee [Fri, 11 Feb 2022 10:36:40 +0000 (19:36 +0900)]
ioctl: nvme_io_args.dspec(Directive Specific) value is 16 bits

Command Dword 13 [31:16]

Signed-off-by: Steven Seungcheol Lee <sc108.lee@samsung.com>
3 years agoMerge pull request #229 from igaw/remove-jsonc-ifdefs
Hannes Reinecke [Thu, 10 Feb 2022 09:39:53 +0000 (10:39 +0100)]
Merge pull request #229 from igaw/remove-jsonc-ifdefs

tree: Remove CONFIG_JSONC ifdefs

3 years agotree: Remove CONFIG_JSONC ifdefs
Daniel Wagner [Thu, 10 Feb 2022 09:13:46 +0000 (10:13 +0100)]
tree: Remove CONFIG_JSONC ifdefs

We have an hard dependency on json-c, so we can rely it's always
available. Remove old ifdefs for json-c.

Signed-off-by: Daniel Wagner <dwagner@suse.de>
3 years agoMerge pull request #221 from hreinecke/dump-tree
Daniel Wagner [Thu, 10 Feb 2022 09:09:18 +0000 (10:09 +0100)]
Merge pull request #221 from hreinecke/dump-tree

tree: add nvme_dump_tree()

3 years agotree: add nvme_dump_tree()
Hannes Reinecke [Thu, 3 Feb 2022 11:21:17 +0000 (12:21 +0100)]
tree: add nvme_dump_tree()

Dump the internal tree in JSON format to stdout for debugging.

Signed-off-by: Hannes Reinecke <hare@suse.de>
[dwagner: dropped json wrapper definition usage]
Signed-off-by: Daniel Wagner <dwagner@suse.de>
3 years agoMerge pull request #227 from igaw/cleanup-libuuid-dep
Daniel Wagner [Thu, 10 Feb 2022 08:49:47 +0000 (09:49 +0100)]
Merge pull request #227 from igaw/cleanup-libuuid-dep

tree: Remove dead !LIBUUID code

3 years agotree: Remove dead !LIBUUID code
Daniel Wagner [Tue, 8 Feb 2022 17:40:32 +0000 (18:40 +0100)]
tree: Remove dead !LIBUUID code

We have added a hard dependency to libuuid. Remove the ifdefs and the
dead code.

Signed-off-by: Daniel Wagner <dwagner@suse.de>
3 years agoMerge pull request #226 from linux-nvme/kernel-doc-ci
Daniel Wagner [Tue, 8 Feb 2022 10:42:56 +0000 (11:42 +0100)]
Merge pull request #226 from linux-nvme/kernel-doc-ci

build: Add kernel-doc CI build

3 years agobuild: Add kernel-doc CI build
Daniel Wagner [Mon, 7 Feb 2022 15:01:57 +0000 (16:01 +0100)]
build: Add kernel-doc CI build

We want to catching documentation failures early. Let's add a
dedicated documentation CI build. To keep build times low just
shortcut here and do not call meson to build the complete
documentation.

Signed-off-by: Daniel Wagner <dwagner@suse.de>
3 years agoMerge pull request #213 from jeffreyalien/telemetry-da4-2
Daniel Wagner [Tue, 8 Feb 2022 10:07:41 +0000 (11:07 +0100)]
Merge pull request #213 from jeffreyalien/telemetry-da4-2

[libnvme] Add Support for Telemetry Log Page Data Area 4

3 years agolinux: Add size and data area parm to nvme_get_telemetry_log
Jeff Lien [Mon, 31 Jan 2022 21:14:46 +0000 (15:14 -0600)]
linux: Add size and data area parm to nvme_get_telemetry_log

This is necessary to support the retrieval of data area 4.

Signed-off-by: Jeff Lien <jeff.lien@wdc.com>
3 years agoMerge pull request #223 from hreinecke/json-mandatory
Daniel Wagner [Tue, 8 Feb 2022 09:23:13 +0000 (10:23 +0100)]
Merge pull request #223 from hreinecke/json-mandatory

Make JSON-C mandatory

3 years agoMerge pull request #225 from igaw/fail-on-warnings
Daniel Wagner [Mon, 7 Feb 2022 14:34:04 +0000 (15:34 +0100)]
Merge pull request #225 from igaw/fail-on-warnings

build: Make CI build fail on warnings

3 years agobuild: Make CI build fail on warnings
Daniel Wagner [Mon, 7 Feb 2022 14:31:24 +0000 (15:31 +0100)]
build: Make CI build fail on warnings

Currently, warnings are hidden in the logs and the build is marked as
succeeded. Mark all warnings as error so that we see them show up in
the review process.

Signed-off-by: Daniel Wagner <dwagner@suse.de>
3 years agoMerge pull request #222 from igaw/mesonize-doc
Daniel Wagner [Fri, 4 Feb 2022 11:52:31 +0000 (12:52 +0100)]
Merge pull request #222 from igaw/mesonize-doc

doc: Mesonize documentation generation

3 years agodoc: Regenerate all documentation
Daniel Wagner [Fri, 4 Feb 2022 11:48:45 +0000 (12:48 +0100)]
doc: Regenerate all documentation

Signed-off-by: Daniel Wagner <dwagner@suse.de>
3 years agodoc: Fix sphinx setup
Daniel Wagner [Fri, 4 Feb 2022 11:45:19 +0000 (12:45 +0100)]
doc: Fix sphinx setup

sphinx warns about cyclic refernce. Do not include the index into the
index file.

Also add the build dir and index.rst to the ignore list. This avoids
another type of warnings.

Signed-off-by: Daniel Wagner <dwagner@suse.de>
3 years agodoc: Mesonize documentation generation
Daniel Wagner [Thu, 3 Feb 2022 17:00:15 +0000 (18:00 +0100)]
doc: Mesonize documentation generation

Introduce a new config flag -Ddocs-build=true which controls if the
build system should generate documentation or not. If disabled but
-Ddocs=man is used then the pre compiled documentation will be
installed.

Furthmore, we are hooking up the sphinx tooling so that we generate
the HTML documentation ouf of the rst files.

Signed-off-by: Daniel Wagner <dwagner@suse.de>
3 years agotypes: Fix doc description
Daniel Wagner [Fri, 4 Feb 2022 11:14:54 +0000 (12:14 +0100)]
types: Fix doc description

Signed-off-by: Daniel Wagner <dwagner@suse.de>
3 years agotree: Remove doublicated declaration
Daniel Wagner [Thu, 3 Feb 2022 16:50:49 +0000 (17:50 +0100)]
tree: Remove doublicated declaration

nvme_host_get_hostnqn() and nvme_host_get_hostid() are declared
twice. Remove one.

Signed-off-by: Daniel Wagner <dwagner@suse.de>
3 years agodoc: Remove unused make.bat file
Daniel Wagner [Thu, 3 Feb 2022 10:38:35 +0000 (11:38 +0100)]
doc: Remove unused make.bat file

The file was added by the initial doc experiment commit. It's not
used. Remove it.

Signed-off-by: Daniel Wagner <dwagner@suse.de>
3 years agoMerge pull request #166 from sc108-lee/for-upstream/tp4095
Daniel Wagner [Fri, 4 Feb 2022 10:41:41 +0000 (11:41 +0100)]
Merge pull request #166 from sc108-lee/for-upstream/tp4095

For upstream/tp4095

3 years agonvme: get log domain id included in Log Specific Identifier
Steven Seungcheol Lee [Fri, 4 Feb 2022 08:23:31 +0000 (17:23 +0900)]
nvme: get log domain id included in Log Specific Identifier

domid was not used in nvme_get_log as well

Signed-off-by: Steven Seungcheol Lee <sc108.lee@samsung.com>
3 years agonvme: Add nulbaf(Number of Unique Capability LBA Formats) field on nvmd_id_ns
Steven Seungcheol Lee [Thu, 23 Dec 2021 01:51:38 +0000 (10:51 +0900)]
nvme: Add nulbaf(Number of Unique Capability LBA Formats) field on nvmd_id_ns

Add explaination for mssrl, mcl, src
Based on spec NVMe - TP 4095 Namespace Capability Reporting 2021.06.28 - Ratified

3 years agoioctl: Add identify ioctl for CNS 09h, 0Ah
Steven Seungcheol Lee [Mon, 17 Jan 2022 03:22:22 +0000 (12:22 +0900)]
ioctl: Add identify ioctl for CNS 09h, 0Ah

09h - Identify Namespace data structure for the specified
      User Data Format index containing the namespace capabilities
      for the NVM Command Set.
0Ah - I/O Command Set specific Identify Namespace data structure
      for the specified User Data Format index containing
      the namespace capabilities for the I/O Command Set
      specified in the CSI field.

Signed-off-by: Steven Seungcheol Lee <sc108.lee@samsung.com>
3 years agotypes: Add NVM Command Set id-ns structure
Steven Seungcheol Lee [Mon, 17 Jan 2022 03:12:36 +0000 (12:12 +0900)]
types: Add NVM Command Set id-ns structure

Add uuid index argument on nvme_identify_ns_csi

Signed-off-by: Steven Seungcheol Lee <sc108.lee@samsung.com>
3 years agoioctl: Modify identify command argument based on spec
Steven Seungcheol Lee [Mon, 17 Jan 2022 02:35:54 +0000 (11:35 +0900)]
ioctl: Modify identify command argument based on spec

CNS Specific identifier presents all names below for DWORD11 bits [15:00]
    NVM Set Identifier(NVM Set List (04h))
    Domain Identifier(Domain List (18h))
    Endurance Group Identifier(Endurance Group List (19h))

Signed-off-by: Steven Seungcheol Lee <sc108.lee@samsung.com>
3 years agoMerge pull request #224 from Arunpandian15/Enhanced_ctrl_MD
Daniel Wagner [Fri, 4 Feb 2022 09:32:09 +0000 (10:32 +0100)]
Merge pull request #224 from Arunpandian15/Enhanced_ctrl_MD

nvme: Add Enhanced Controller Meta Data(FID: 0x7D)

3 years agonvme: Add Enhanced Controller Meta Data(FID: 0x7D)
Arunpandian J [Fri, 4 Feb 2022 09:12:36 +0000 (14:42 +0530)]
nvme: Add Enhanced Controller Meta Data(FID: 0x7D)

Reviewed-by: Steven Seungcheol Lee <sc108.lee@samsung.com>
Signed-off-by: Arunpandian J <apj.arun@samsung.com>
3 years agoMake JSON-C mandatory during built
Hannes Reinecke [Fri, 4 Feb 2022 08:06:45 +0000 (09:06 +0100)]
Make JSON-C mandatory during built

We already have a JSON-C subproject, so we can make it mandatory
during build anyway.

Signed-off-by: Hannes Reinecke <hare@suse.de>
3 years agojson: remove wrapper definitions
Hannes Reinecke [Fri, 4 Feb 2022 07:55:14 +0000 (08:55 +0100)]
json: remove wrapper definitions

Switch to JSON-C API.

Signed-off-by: Hannes Reinecke <hare@suse.de>
3 years agotree: do not print function twice
Hannes Reinecke [Fri, 4 Feb 2022 07:44:01 +0000 (08:44 +0100)]
tree: do not print function twice

nvme_msg() already prints out the function name, no need to specify
it in the message itself.

Signed-off-by: Hannes Reinecke <hare@suse.de>
3 years agoMerge pull request #199 from Arunpandian15/Supported_Cap_Config_List_Log_Page
Daniel Wagner [Fri, 4 Feb 2022 07:21:28 +0000 (08:21 +0100)]
Merge pull request #199 from Arunpandian15/Supported_Cap_Config_List_Log_Page

nvme: Add Supported Capacity Configuration List log page(LID: 0x11)

3 years agonvme: Add Supported Capacity Configuration List log page(LID: 0x11)
Arunpandian J [Thu, 3 Feb 2022 08:25:36 +0000 (13:55 +0530)]
nvme: Add Supported Capacity Configuration List log page(LID: 0x11)

Reviewed-by: Steven Seungcheol Lee <sc108.lee@samsung.com>
Signed-off-by: Arunpandian J <apj.arun@samsung.com>
3 years agoMerge pull request #220 from hreinecke/dhchap-fix
Hannes Reinecke [Thu, 3 Feb 2022 13:38:23 +0000 (14:38 +0100)]
Merge pull request #220 from hreinecke/dhchap-fix

tree: do not set dhchap_key to 'none'

3 years agotree: do not set dhchap_key to 'none'
Hannes Reinecke [Thu, 3 Feb 2022 11:28:13 +0000 (12:28 +0100)]
tree: do not set dhchap_key to 'none'

When no dhchap key is set the kernel will set the sysfs attribute
to 'none'. And we shouldn't display this value in our internal tree
as it really means 'not set'.

Signed-off-by: Hannes Reinecke <hare@suse.de>