]> www.infradead.org Git - users/sagi/nvme-cli.git/log
users/sagi/nvme-cli.git
23 months agoRevert "nvme: Masks SSTAT in sanize-log output"
Maurizio Lombardi [Tue, 23 May 2023 13:08:40 +0000 (15:08 +0200)]
Revert "nvme: Masks SSTAT in sanize-log output"

The NVME_SANITIZE_SSTAT_STATUS_MASK is used to mask the
3 least significant bits (representing the status of the most recent
sanitize operation) of the SSTAT field.

The SSTAT field is 16 bits wide and contains other information too, such
as the Global Data Erased bit and the number of completed passes.

Revert this commit so nvme-cli will print the entire SSTAT field

This reverts commit 7092ff55c5d9017231a68fa4dbb9a37b42d61d61.

23 months agofabrics: Fix NVMF_ARGS macro indentation error
Tokunori Ikegami [Sat, 20 May 2023 01:15:12 +0000 (10:15 +0900)]
fabrics: Fix NVMF_ARGS macro indentation error

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
23 months agoDocumentation: Add document for OCP Device capability(LID: 0xC4) log page
Arunpandian J [Wed, 17 May 2023 13:25:36 +0000 (18:55 +0530)]
Documentation: Add document for OCP Device capability(LID: 0xC4) log page

Signed-off-by: Arunpandian J <arun.j@samsung.com>
23 months agocompletions: Add bash completion for OCP Device capability(LID: 0xC4) log page
Arunpandian J [Wed, 17 May 2023 13:23:33 +0000 (18:53 +0530)]
completions: Add bash completion for OCP Device capability(LID: 0xC4) log page

Signed-off-by: Arunpandian J <arun.j@samsung.com>
23 months agoplugins/ocp: Add Device capability(LID: 0xC4) log page
Arunpandian J [Wed, 17 May 2023 13:17:42 +0000 (18:47 +0530)]
plugins/ocp: Add Device capability(LID: 0xC4) log page

Signed-off-by: Arunpandian J <arun.j@samsung.com>
23 months agoudev: fix warning reported by udevadm verify
Dmitry V. Levin [Fri, 19 May 2023 08:00:00 +0000 (08:00 +0000)]
udev: fix warning reported by udevadm verify

Fix the following warning reported by udevadm verify:

nvmf-autoconnect/udev-rules/70-nvmf-autoconnect.rules.in:18 Whitespace after comma is expected.
nvmf-autoconnect/udev-rules/70-nvmf-autoconnect.rules.in: udev rules check failed

Signed-off-by: Dmitry V. Levin <ldv@strace.io>
23 months agofabrics: fix conditions in nvmf-autoconnect.service
Martin Wilck [Tue, 23 May 2023 10:43:46 +0000 (12:43 +0200)]
fabrics: fix conditions in nvmf-autoconnect.service

The unit should be started if either config.json or discovery.conf
exists. The current syntax would start it if either one does not
exist. Fix it.

Fixes: eec7634 ("fabrics: Trigger auto connect if config.json exists")
Signed-off-by: Martin Wilck <mwilck@suse.com>
23 months agofabrics: Change NVMF_OPTS as NVMF_ARGS to fix linux kernel check patch error
Tokunori Ikegami [Fri, 19 May 2023 16:23:46 +0000 (01:23 +0900)]
fabrics: Change NVMF_OPTS as NVMF_ARGS to fix linux kernel check patch error

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
23 months agonvme: Split passthru commands read output
Tokunori Ikegami [Wed, 17 May 2023 23:07:20 +0000 (08:07 +0900)]
nvme: Split passthru commands read output

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
23 months agonvme: Fix io-passthru command read metadata output
Tokunori Ikegami [Wed, 17 May 2023 16:16:41 +0000 (01:16 +0900)]
nvme: Fix io-passthru command read metadata output

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
23 months agobuild: Install missing s390 library
Daniel Wagner [Fri, 19 May 2023 07:28:12 +0000 (09:28 +0200)]
build: Install missing s390 library

libjson-c-dev:s390x depends on the libgcc-s1 library.

Signed-off-by: Daniel Wagner <dwagner@suse.de>
23 months agoplugin/ocp: Added implementation for 0xC1 log page
jaya.ganthan [Fri, 28 Apr 2023 03:10:56 +0000 (08:40 +0530)]
plugin/ocp: Added implementation for 0xC1 log page

Reviewed-by: Karthik Balan <karthik.b82@samsung.com>
Reviewed-by: Arunpandian J <arun.j@samsung.com>
Signed-off-by: Jayakanthan Rajendran <jaya.ganthan@samsung.com>
23 months agoutil: Fix suffix_si_parse to parse no decimal point but suffix value correctly
Tokunori Ikegami [Sun, 14 May 2023 08:39:00 +0000 (17:39 +0900)]
util: Fix suffix_si_parse to parse no decimal point but suffix value correctly

For example create-ns command --ncap-si paramter value 800G parsed to 0 as invalid value.

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
23 months agocompletions: Add zsh option values handling for sanitize command action
Tokunori Ikegami [Sun, 14 May 2023 03:14:36 +0000 (12:14 +0900)]
completions: Add zsh option values handling for sanitize command action

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
23 months agocompletions: Add ocp sub commands zsh completion
Tokunori Ikegami [Sat, 13 May 2023 10:59:18 +0000 (19:59 +0900)]
completions: Add ocp sub commands zsh completion

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
23 months agocompletions: Add ocp commands zsh completion
Tokunori Ikegami [Sat, 13 May 2023 06:45:11 +0000 (15:45 +0900)]
completions: Add ocp commands zsh completion

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
23 months agocompletions: Add ocp commands bash completion
Tokunori Ikegami [Sat, 13 May 2023 03:33:33 +0000 (12:33 +0900)]
completions: Add ocp commands bash completion

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
23 months agonvmf-autoconnect: restart service to avoid dropping AEN
Caleb Sander [Fri, 12 May 2023 19:41:06 +0000 (13:41 -0600)]
nvmf-autoconnect: restart service to avoid dropping AEN

If another discovery log page change AEN is received while the
autoconnect service is already running for a previous AEN,
the autoconnect service is not being relaunched.
For example, if some of the entries in the log page are not reachable,
attempting to connect to them may take a long time before timing out,
so AENs received while waiting for the connections have no effect.
The AEN is effectively dropped: we ignore the new discovery log entries
and worse, the controller won't send more AENs because it's waiting
for the log page to be fetched in response to the previous AEN.

Use systemctl restart instead of systemctl start
to ensure nvme connect-all is run in response to each AEN.
If a previous instance of the service is already running,
it will be interrupted and the new log page will be fetched.

Fixes: 391d3b12248a ("nvme-cli: nvmf auto-connect scripts")
Signed-off-by: Caleb Sander <csander@purestorage.com>
23 months agosolidigm: Reduce memory usage in supported log pages feature
kdedow [Fri, 5 May 2023 12:58:14 +0000 (05:58 -0700)]
solidigm: Reduce memory usage in supported log pages feature

23 months agosolidigm: Changes to supported log pages feature requested by review
kdedow [Mon, 24 Apr 2023 19:06:42 +0000 (12:06 -0700)]
solidigm: Changes to supported log pages feature requested by review

- Retrieve supported logs for all known UUIDs
- Update 'normal' output to table format

23 months agosolidigm: Add supported log pages log feature to Solidigm plugin
kdedow [Tue, 18 Apr 2023 17:30:39 +0000 (10:30 -0700)]
solidigm: Add supported log pages log feature to Solidigm plugin

23 months agoplugins/ocp: Added ocp unsupported requirements log page
Vigneshwaran Saravanan [Fri, 28 Apr 2023 07:12:39 +0000 (12:42 +0530)]
plugins/ocp: Added ocp unsupported requirements log page

Reviewed-by: Karthik Balan <karthik.b82@samsung.com>
Reviewed-by: Arunpandian J <arun.j@samsung.com>
Signed-off-by: Vigneshwaran Saravanan <s.vignesh@samsung.com>
23 months agocompletions: Add bash option values handling for sanitize command action
Tokunori Ikegami [Sun, 7 May 2023 07:21:34 +0000 (16:21 +0900)]
completions: Add bash option values handling for sanitize command action

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
23 months agodoc: Correct nvme-show-hostnqn command NAME description
Tokunori Ikegami [Sat, 6 May 2023 14:05:06 +0000 (23:05 +0900)]
doc: Correct nvme-show-hostnqn command NAME description

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
23 months agocompletions: Add missing zsh commands descriptions
Tokunori Ikegami [Sat, 6 May 2023 14:02:41 +0000 (23:02 +0900)]
completions: Add missing zsh commands descriptions

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
23 months agoplugins/wdc: Extend SN530 support.
Stellios Leventis [Fri, 5 May 2023 01:08:50 +0000 (18:08 -0700)]
plugins/wdc: Extend SN530 support.

Extend SN530 SSD support for alternate PCI device IDs.

23 months agoFix incorrect article 'an' as 'a' to use for descriptions and message
Tokunori Ikegami [Fri, 5 May 2023 13:09:36 +0000 (22:09 +0900)]
Fix incorrect article 'an' as 'a' to use for descriptions and message

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
23 months agonvme: Set effects-log command csi option help message string
Tokunori Ikegami [Fri, 5 May 2023 08:57:47 +0000 (17:57 +0900)]
nvme: Set effects-log command csi option help message string

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
23 months agocompletions: bash: Delete unsupported id-iocs command options
Tokunori Ikegami [Fri, 5 May 2023 01:48:24 +0000 (10:48 +0900)]
completions: bash: Delete unsupported id-iocs command options

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
23 months agocompletions: bash: Add id-domain command
Tokunori Ikegami [Fri, 5 May 2023 01:40:47 +0000 (10:40 +0900)]
completions: bash: Add id-domain command

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
23 months agocompletions: Fix nvm-id-ns-lba-format command zsh definition
Tokunori Ikegami [Fri, 5 May 2023 00:19:37 +0000 (09:19 +0900)]
completions: Fix nvm-id-ns-lba-format command zsh definition

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
23 months agocompletions: Add json command option
Tokunori Ikegami [Thu, 4 May 2023 22:31:15 +0000 (07:31 +0900)]
completions: Add json command option

It was introduced by the change 6aab9e49e but not added for command completion.
  Note: The changes included some completion script files indentation fixes.

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
23 months agonvme: Fix get-feature command sel parameter check to allow value 8
Tokunori Ikegami [Thu, 4 May 2023 11:56:56 +0000 (20:56 +0900)]
nvme: Fix get-feature command sel parameter check to allow value 8

The parameter was changed to use value 8 also by the change 30b89e5ef.
  Note: The value is used only for the command functionality to limit feature
        output changed from default but not passed to the driver.

Fixes: 63dcb68c6 ("nvme: Fix parameter limit range")
Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
23 months agoutil: Delete unnecessary argconfig definitions OPT_VAL and CFG_VAL
Tokunori Ikegami [Thu, 4 May 2023 11:33:12 +0000 (20:33 +0900)]
util: Delete unnecessary argconfig definitions OPT_VAL and CFG_VAL

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
23 months agoutil: Delete argconfig value type to add option value as va lists instead
Tokunori Ikegami [Thu, 4 May 2023 03:47:21 +0000 (12:47 +0900)]
util: Delete argconfig value type to add option value as va lists instead

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
23 months agoutil: Split to set argconfig option value
Tokunori Ikegami [Tue, 2 May 2023 16:04:28 +0000 (01:04 +0900)]
util: Split to set argconfig option value

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
23 months agoutil: Delete argconfig value length to calcurate instead
Tokunori Ikegami [Tue, 2 May 2023 15:41:13 +0000 (00:41 +0900)]
util: Delete argconfig value length to calcurate instead

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
23 months agonvme: Change sanitize command action option to use argconfig parse value
Tokunori Ikegami [Tue, 2 May 2023 03:08:43 +0000 (12:08 +0900)]
nvme: Change sanitize command action option to use argconfig parse value

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
23 months agoutil: Add argconfig parse value function
Tokunori Ikegami [Sat, 29 Apr 2023 15:24:56 +0000 (00:24 +0900)]
util: Add argconfig parse value function

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
23 months agoutil: Delete unused argconfig subopts type
Tokunori Ikegami [Sun, 30 Apr 2023 13:35:46 +0000 (22:35 +0900)]
util: Delete unused argconfig subopts type

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
23 months agoutil: Delete unused argconfig file types
Tokunori Ikegami [Sun, 30 Apr 2023 13:07:48 +0000 (22:07 +0900)]
util: Delete unused argconfig file types

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
23 months agoutil: Delete unused argconfig help function
Tokunori Ikegami [Sat, 29 Apr 2023 15:24:29 +0000 (00:24 +0900)]
util: Delete unused argconfig help function

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
23 months agonvme-wrap: do_admin_args_op should not clear args timeout
Steven Seungcheol Lee [Fri, 28 Apr 2023 02:08:21 +0000 (11:08 +0900)]
nvme-wrap: do_admin_args_op should not clear args timeout

if set with NVME_DEFAULT_IOCTL_TIMEOUT, timeout parameter always ignored

Signed-off-by: Steven Seungcheol Lee <sc108.lee@samsung.com>
Reported-by: Daseul Lee <daseul.lee@samsung.com>
23 months agonvme: Fix linux kernel check patch warnings
Tokunori Ikegami [Sun, 23 Apr 2023 04:58:20 +0000 (13:58 +0900)]
nvme: Fix linux kernel check patch warnings

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
23 months agonvme: Fix linux kernel check patch errors
Tokunori Ikegami [Fri, 21 Apr 2023 18:01:05 +0000 (03:01 +0900)]
nvme: Fix linux kernel check patch errors

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
23 months agoplugins/ocp: Add telemetry-log command to OCP plugin
Arthur Shau [Thu, 6 Apr 2023 00:53:43 +0000 (17:53 -0700)]
plugins/ocp: Add telemetry-log command to OCP plugin

23 months agoplugins/ocp: Add OCP set latency monitor feature command
Arthur Shau [Wed, 5 Apr 2023 23:23:23 +0000 (16:23 -0700)]
plugins/ocp: Add OCP set latency monitor feature command

23 months agoplugins/ocp: Fix endianness in Latency Monitor Log output
Arthur Shau [Wed, 5 Apr 2023 22:56:14 +0000 (15:56 -0700)]
plugins/ocp: Fix endianness in Latency Monitor Log output

OCP 2.0 spec changed the endianness for some of the fields in the C3 LM Log. Fixed this when outputting the values.

23 months agoplugins/ocp: Add missing fields in Latency Monitor Log
Arthur Shau [Wed, 5 Apr 2023 22:03:35 +0000 (15:03 -0700)]
plugins/ocp: Add missing fields in Latency Monitor Log

Changes include:
- Added Debug Log Measured Latency, Debug Log Latency Time Stamp, Debug Log Pointer, Debug Counter Trigger Source, Debug Log Stamp Units, Log Page Version, and Log Page GUID, as required by OCP 2.0 spec.
- Reorganized some of the output so that it (mostly) matches the order in which they show up in the spec.

23 months agoplugins/ocp: Fix typos in Latency Monitor Log
Arthur Shau [Wed, 5 Apr 2023 21:13:25 +0000 (14:13 -0700)]
plugins/ocp: Fix typos in Latency Monitor Log

Changes include:
- Fixed the naming of some log page C3 constants that were incorrectly labelled as C0.
- Fixed a typo in the JSON output: 'lantency' -> 'latency'

23 months agoplugins/ocp: Reorganize OCP plugin source code
Arthur Shau [Wed, 5 Apr 2023 21:03:03 +0000 (14:03 -0700)]
plugins/ocp: Reorganize OCP plugin source code

Shifted the location of some functions around so they're grouped together better. Also added separators in the comments so it's easy to distinguish which block of functions pertain to what command.

23 months agotests: Add tests for controller reset
Arunpandian J [Tue, 25 Apr 2023 04:43:43 +0000 (10:13 +0530)]
tests: Add tests for controller reset

Signed-off-by: Arunpandian J <arun.j@samsung.com>
2 years agoplugin/solidigm: Added vs-internal-log command.
da Cunha, Leonardo [Fri, 3 Mar 2023 23:06:40 +0000 (15:06 -0800)]
plugin/solidigm: Added vs-internal-log command.

2 years agonvme: Add nvme_show_perror to use instead of perror for json output
Tokunori Ikegami [Mon, 17 Apr 2023 15:26:03 +0000 (00:26 +0900)]
nvme: Add nvme_show_perror to use instead of perror for json output

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
2 years agonvme-print-json: Use vasprintf instead of vsnprintf to allocate string
Tokunori Ikegami [Mon, 17 Apr 2023 14:01:45 +0000 (23:01 +0900)]
nvme-print-json: Use vasprintf instead of vsnprintf to allocate string

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
2 years agonvme: fix rnlpt to_string() values.
Maurizio Lombardi [Mon, 17 Apr 2023 13:39:56 +0000 (15:39 +0200)]
nvme: fix rnlpt to_string() values.

"Reservation Notification Log Page Type" values do not start
from 0x1 but from 0x0.

Signed-off-by: Maurizio Lombardi <mlombard@redhat.com>
2 years agobuild: Bump libnvme wrap to fix io_mgmt apis
Steven Seungcheol Lee [Mon, 17 Apr 2023 05:26:27 +0000 (14:26 +0900)]
build: Bump libnvme wrap to fix io_mgmt apis

TP4146 Flexible Data Placement 2022.11.30 Ratified Command Dword 10
Bits[31:16] : Management Operation Specific (MOS)
Bits[07:00] : Management Operation (MO)
https://github.com/linux-nvme/libnvme/pull/626

Signed-off-by: Steven Seungcheol Lee <sc108.lee@samsung.com>
2 years agonvme: fix io_mgmt args parse error
Steven Seungcheol Lee [Mon, 17 Apr 2023 03:09:59 +0000 (12:09 +0900)]
nvme: fix io_mgmt args parse error

Since mos defined __u16, it should be parsed with OPT_SHRT
if mos given right after mo, it cause parse error
mo always set as 0

Signed-off-by: Steven Seungcheol Lee <sc108.lee@samsung.com>
Co-authored-by: Minsik Jeon <hmi.jeon@samsung.com>
Reported-by: Youngjin Jung <yj4369.jung@samsung.com>
2 years agofdp: set-events feature is saveable
Steven Seungcheol Lee [Mon, 17 Apr 2023 05:17:41 +0000 (14:17 +0900)]
fdp: set-events feature is saveable

TP4146 Flexible Data Placement 2022.11.30 Ratified
5.27.1.TBD1 Flexible Data Placement Events (Feature Identifier 1Eh)
mentioned as below
This Feature shall be saveable (refer to section 4.2).

Signed-off-by: Steven Seungcheol Lee <sc108.lee@samsung.com>
Reported-by: Youngjin Jung <yj4369.jung@samsung.com>
2 years agofabrics: Return errno value as negative
Tokunori Ikegami [Sun, 16 Apr 2023 06:19:11 +0000 (15:19 +0900)]
fabrics: Return errno value as negative

Changes for linux kernel check patch warnings remained.
Change to use `//` instead for proper SPDX comment style.
And also change symbolic permissions `S_IRUSR | S_IWUSR' as '0600'.
  Note: Still remaining a check patch error.

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
2 years agofabrics: Fix linux kernel check patch errors and warnings
Tokunori Ikegami [Sat, 15 Apr 2023 11:37:12 +0000 (20:37 +0900)]
fabrics: Fix linux kernel check patch errors and warnings

Note: Still remaining some errors warnings.

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
2 years agonbft: add the nbft show plugin
Stuart Hayes [Sat, 15 Apr 2023 02:01:07 +0000 (22:01 -0400)]
nbft: add the nbft show plugin

Display contents of the ACPI NBFT files.

Usage: nvme nbft show <device> [OPTIONS]

Options:
  [  --output-format=<FMT>, -o <FMT> ]  --- Output format: normal|json
  [  --subsystem, -s ]                  --- show NBFT subsystems
  [  --hfi, -H ]                        --- show NBFT HFIs
  [  --discovery, -d ]                  --- show NBFT discovery controllers
  [  --nbft-path=<STR> ]                --- user-defined path for NBFT tables

Signed-off-by: Stuart Hayes <stuart_hayes@dell.com>
Signed-off-by: Martin Wilck <mwilck@suse.com>
Signed-off-by: John Meneghini <jmeneghi@redhat.com>
2 years agonbft: added NBFT v1.0 table support
Stuart Hayes [Wed, 15 Jun 2022 16:42:50 +0000 (11:42 -0500)]
nbft: added NBFT v1.0 table support

Added support for parsing the contents of the NBFT table (per NVMe-oF
boot specification v1.0) with the connect-all and discover commands.

nvme discover/connect-all --nbft ignore /etc/nvme config and use NBFT tables
nvme discover/connect-all --no-nbft ignore NBFT tables and use /etc/nvme config
nvme discover/connect-all --nbft-path=<STR> user-defined path for NBFT tables

Signed-off-by: Stuart Hayes <stuart_hayes@dell.com>
Signed-off-by: Martin Belanger <martin.belanger@dell.com>
Use the new nbft public API.

Signed-off-by: Tomas Bzatek <tbzatek@redhat.com>
Signed-off-by: Martin Wilck <mwilck@suse.com>
Signed-off-by: John Meneghini <jmeneghi@redhat.com>
2 years agonbft: make lookup_ctrl function public
John Meneghini [Fri, 14 Apr 2023 14:53:58 +0000 (10:53 -0400)]
nbft: make lookup_ctrl function public

To prepare for the addition of nbft functionality fixup the fabrics
declarations.

Signed-off-by: John Meneghini <jmeneghi@redhat.com>
2 years agonvme: Fix indentation errors around nvme show error API
Tokunori Ikegami [Sat, 15 Apr 2023 10:25:57 +0000 (19:25 +0900)]
nvme: Fix indentation errors around nvme show error API

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
2 years agonvme: Check validate output format err value instead of flags
Tokunori Ikegami [Sat, 15 Apr 2023 06:21:53 +0000 (15:21 +0900)]
nvme: Check validate output format err value instead of flags

Since the nvme print flags enum value not set to the negative value.

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
2 years agonvme: Use nvme show error API to outptu stderr messages for json format
Tokunori Ikegami [Sat, 15 Apr 2023 05:07:13 +0000 (14:07 +0900)]
nvme: Use nvme show error API to outptu stderr messages for json format

Multiple lines std error messages are remained yet since unsupported by the API.

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
2 years agoutil: Check output format json for json error message output
Tokunori Ikegami [Fri, 14 Apr 2023 17:56:12 +0000 (02:56 +0900)]
util: Check output format json for json error message output

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
2 years agonvme-printf: Add show error function for nvme list command json output
Tokunori Ikegami [Fri, 14 Apr 2023 16:50:07 +0000 (01:50 +0900)]
nvme-printf: Add show error function for nvme list command json output

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
2 years agobuild: Extend static linked binary build test
Daniel Wagner [Mon, 17 Apr 2023 06:26:35 +0000 (08:26 +0200)]
build: Extend static linked binary build test

So far, the binary was still linking against the libc dynamically.
The final step to link completely statically can be achieved by setting
the LDFLAGS environment variable.

Signed-off-by: Daniel Wagner <dwagner@suse.de>
2 years agobuild: Fix appimage configuration
Daniel Wagner [Fri, 14 Apr 2023 12:22:45 +0000 (14:22 +0200)]
build: Fix appimage configuration

Typo in the arguments to the ftp upload stage. The default mode is
already correct, so just drop it.

Signed-off-by: Daniel Wagner <dwagner@suse.de>
2 years agodoc: Update REAMDE
Daniel Wagner [Fri, 14 Apr 2023 12:04:05 +0000 (14:04 +0200)]
doc: Update REAMDE

Update the build from source section and shorten the distro install
section.

Signed-off-by: Daniel Wagner <dwagner@suse.de>
2 years agobuild: Update wrap mode defaults
Daniel Wagner [Thu, 13 Apr 2023 11:00:55 +0000 (13:00 +0200)]
build: Update wrap mode defaults

We switched the default of the wrap mode to nofallback. Update the CI
builds accordingly.

Signed-off-by: Daniel Wagner <dwagner@suse.de>
2 years agobuild: Extend summary section
Daniel Wagner [Fri, 14 Apr 2023 07:45:03 +0000 (09:45 +0200)]
build: Extend summary section

List also the dependencies and the user configuration in the summary.

Signed-off-by: Daniel Wagner <dwagner@suse.de>
2 years agobuild: Make json-c dependency lookup not fail
Daniel Wagner [Fri, 14 Apr 2023 07:17:43 +0000 (09:17 +0200)]
build: Make json-c dependency lookup not fail

Let's relax the dependency on json-c, when the comman line option is set
to auto. It will just ignore the dependency if not found.

Signed-off-by: Daniel Wagner <dwagner@suse.de>
2 years agobuild: Disable fallback on default
Daniel Wagner [Thu, 13 Apr 2023 10:56:10 +0000 (12:56 +0200)]
build: Disable fallback on default

meson's default setting for wrap mode is to attempt to download missing
dependencies. Disable this feature as the community is unhappy with
this default behavior.

Signed-off-by: Daniel Wagner <dwagner@suse.de>
2 years agobuild: Bump libnvme wrap
Daniel Wagner [Thu, 13 Apr 2023 10:54:13 +0000 (12:54 +0200)]
build: Bump libnvme wrap

Get the wrap mode disable settings

Signed-off-by: Daniel Wagner <dwagner@suse.de>
2 years agobuild: Bump libnvme.wrap to align create ns args
Steven Seungcheol Lee [Wed, 5 Apr 2023 04:12:13 +0000 (13:12 +0900)]
build: Bump libnvme.wrap to align create ns args

Signed-off-by: Steven Seungcheol Lee <sc108.lee@samsung.com>
2 years agonvme: Add zns specfic field for create ns
Steven Seungcheol Lee [Wed, 5 Apr 2023 04:10:42 +0000 (13:10 +0900)]
nvme: Add zns specfic field for create ns

nvme_ns_mgmt_host_sw_specified_zns from TP4115 ZNS Namespace Management Enhancements 2022.03.15 Ratified

Signed-off-by: Steven Seungcheol Lee <sc108.lee@samsung.com>
2 years agonvme: Add ns-mgmt host software specified fields
Steven Seungcheol Lee [Mon, 13 Feb 2023 12:28:38 +0000 (21:28 +0900)]
nvme: Add ns-mgmt host software specified fields

nphndls, phndl from TP4146 Flexible Data Placement 2022.11.30 Ratified

Reported-by: Youngjin Jung <yj4369.jung@samsung.com>
Signed-off-by: Steven Seungcheol Lee <sc108.lee@samsung.com>
2 years agonvme: Add dtype, dspec on write-zeroes, write-uncor
Steven Seungcheol Lee [Thu, 9 Feb 2023 04:18:46 +0000 (13:18 +0900)]
nvme: Add dtype, dspec on write-zeroes, write-uncor

Based on TP4146 Flexible Data Placement 2022.11.30 Ratified

Reported-by: Youngjin Jung <yj4369.jung@samsung.com>
Signed-off-by: Steven Seungcheol Lee <sc108.lee@samsung.com>
2 years agonvme-print: Add new fields print on id directive
Steven Seungcheol Lee [Wed, 8 Feb 2023 06:43:46 +0000 (15:43 +0900)]
nvme-print: Add new fields print on id directive

Identify Directive – Return Parameters Data Structure
From TP4146 Flexible Data Placement 2022.11.30 Ratified

Signed-off-by: Steven Seungcheol Lee <sc108.lee@samsung.com>
2 years agonvme-print: Add VWCNP on NSFEAT of id-ns
Steven Seungcheol Lee [Wed, 8 Feb 2023 06:05:27 +0000 (15:05 +0900)]
nvme-print: Add VWCNP on NSFEAT of id-ns

Identify – I/O Command Set Independent Identify Namespace Data Structure
From TP4146 Flexible Data Placement 2022.11.30 Ratified

Signed-off-by: Steven Seungcheol Lee <sc108.lee@samsung.com>
2 years agonvme: Fix format command to skip to reread NSID all block device
Tokunori Ikegami [Wed, 12 Apr 2023 15:30:35 +0000 (00:30 +0900)]
nvme: Fix format command to skip to reread NSID all block device

Since if NSID all specified NS data is not identified so the reread failed.

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
2 years agoplugins/solidigm: Fixes and clean-up of Telemetry parse code.
da Cunha, Leonardo [Thu, 16 Mar 2023 23:53:37 +0000 (16:53 -0700)]
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.

2 years agodoc: Documentations maintenance changes
Tokunori Ikegami [Tue, 11 Apr 2023 16:34:47 +0000 (01:34 +0900)]
doc: Documentations maintenance changes

Change the following commands documentations.
  1. admin-passthru
  2. get-feature
  3. set-feature
  4. clear-fw-activate-history

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
2 years agodoc: Add nvme-mi-send command documentation
Tokunori Ikegami [Tue, 11 Apr 2023 16:35:53 +0000 (01:35 +0900)]
doc: Add nvme-mi-send command documentation

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
2 years agodoc: Add nvme-mi-recv command documentation
Tokunori Ikegami [Tue, 11 Apr 2023 16:16:04 +0000 (01:16 +0900)]
doc: Add nvme-mi-recv command documentation

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
2 years agodoc: Add clear-pcie-correctable-error-counters command documentation
Tokunori Ikegami [Tue, 11 Apr 2023 16:03:50 +0000 (01:03 +0900)]
doc: Add clear-pcie-correctable-error-counters command documentation

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
2 years agodoc: Add eol-plp-failure-mode command documentation
Tokunori Ikegami [Tue, 11 Apr 2023 16:01:18 +0000 (01:01 +0900)]
doc: Add eol-plp-failure-mode command documentation

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
2 years agoplugins/solidigm: Add firmware activation history log to Solidigm plugin
kdedow [Thu, 30 Mar 2023 17:05:56 +0000 (10:05 -0700)]
plugins/solidigm: Add firmware activation history log to Solidigm plugin

2 years agoplugins/ocp: Add firmware activation history log to OCP plugin
kdedow [Thu, 30 Mar 2023 16:27:26 +0000 (09:27 -0700)]
plugins/ocp: Add firmware activation history log to OCP plugin

2 years agonvme-print: Use enum nvme_print_flags for nvme_show_id_ctrl
Daniel Wagner [Wed, 5 Apr 2023 12:31:25 +0000 (14:31 +0200)]
nvme-print: Use enum nvme_print_flags for nvme_show_id_ctrl

gcc is complaining that the function declaration and definition do not
match. Update the declaration accordingly.

Signed-off-by: Daniel Wagner <dwagner@suse.de>
2 years agonvme: Add support for NVMe-MI send command
Tokunori Ikegami [Tue, 4 Apr 2023 17:11:57 +0000 (02:11 +0900)]
nvme: Add support for NVMe-MI send command

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
2 years agonvme: Use stdout for passthru and submit_io commands success messages
Tokunori Ikegami [Mon, 3 Apr 2023 15:02:24 +0000 (00:02 +0900)]
nvme: Use stdout for passthru and submit_io commands success messages

Also fix submit_io command indentation errors.

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
2 years agonvme: Fix passthru command function indentation errors
Tokunori Ikegami [Sun, 2 Apr 2023 15:33:23 +0000 (00:33 +0900)]
nvme: Fix passthru command function indentation errors

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
2 years agonvme: Add support for NVMe-MI receive command
Tokunori Ikegami [Sun, 2 Apr 2023 15:15:05 +0000 (00:15 +0900)]
nvme: Add support for NVMe-MI receive command

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
2 years agofabrics: fix fc config JSON file handling
Martin George [Tue, 4 Apr 2023 09:29:09 +0000 (14:59 +0530)]
fabrics: fix fc config JSON file handling

Unlike other nvme transports, nvme/fc connection requires a valid
host_traddr in addition to traddr and transport type. Current fc
config JSON handling is broken due to the host_traddr not getting
updated even if explicitly listed in the JSON file, as shown below:

nvme connect-all -J /usr/local/etc/nvme/config.json
Failed to write to /dev/nvme-fabrics: Invalid argument

And the below error is logged in the messages file for the same:

nvme_fabrics: missing parameter 'host_traddr=%s'

Fix this by ensuring the relevant host_traddr string is appropriately
passed to the respective nvme controller structure. And while we are
at it, ensure the host_iface string is updated too but noting that it
is only applicable to tcp alone, and not rdma or fc.

Signed-off-by: Martin George <marting@netapp.com>
2 years agobuild: Fetch all references before using git describe
Daniel Wagner [Wed, 5 Apr 2023 06:27:53 +0000 (08:27 +0200)]
build: Fetch all references before using git describe

The release script is using git describe to get the references string of
the library. The returned string validated if it is a valid release
string, e.g. v1.4. If not we abort the operation.

Thus we need to make sure that we have all references including the
tags, thus do a git fetch --all first.

Signed-off-by: Daniel Wagner <dwagner@suse.de>
2 years agobuild: Deploy AppImage only for push on master
Daniel Wagner [Mon, 3 Apr 2023 14:51:21 +0000 (16:51 +0200)]
build: Deploy AppImage only for push on master

Signed-off-by: Daniel Wagner <dwagner@suse.de>