]> www.infradead.org Git - users/sagi/nvme-cli.git/log
users/sagi/nvme-cli.git
22 months agonvme-print-stdout: Refactor stdout print code to use print_ops
Daniel Wagner [Wed, 31 May 2023 18:52:09 +0000 (20:52 +0200)]
nvme-print-stdout: Refactor stdout print code to use print_ops

Use the newly introduced print_ops infrastructure to for the stdout
printing code.

Signed-off-by: Daniel Wagner <dwagner@suse.de>
22 months agonvme-print-json: Refactor json print code to use nvme_print_ops
Daniel Wagner [Wed, 31 May 2023 18:38:12 +0000 (20:38 +0200)]
nvme-print-json: Refactor json print code to use nvme_print_ops

Use the newly introduced print_ops infrastructure to for the json
printing code.

Signed-off-by: Daniel Wagner <dwagner@suse.de>
22 months agoprint: Introduce print ops structure
Daniel Wagner [Fri, 19 May 2023 16:33:29 +0000 (18:33 +0200)]
print: Introduce print ops structure

Introduce callbacks for printing the nvme data structures. With this we
are able to split the two printing types (stdout and json) and just use
the ops the user selects ('-o json' for example).

Signed-off-by: Daniel Wagner <dwagner@suse.de>
22 months agofabrics: Move printing functions to the print files
Daniel Wagner [Tue, 30 May 2023 11:44:06 +0000 (13:44 +0200)]
fabrics: Move printing functions to the print files

Move all printing functions to the corresponding print files.

Signed-off-by: Daniel Wagner <dwagner@suse.de>
22 months agonvme-print: Split add_bitmap implementation
Daniel Wagner [Tue, 30 May 2023 08:08:10 +0000 (10:08 +0200)]
nvme-print: Split add_bitmap implementation

Instead a common function for printing the bitmaps just split it
into the corresponding implementation.

Signed-off-by: Daniel Wagner <dwagner@suse.de>
22 months agonvme-print: Unify flag passing into functions
Daniel Wagner [Tue, 30 May 2023 07:42:59 +0000 (09:42 +0200)]
nvme-print: Unify flag passing into functions

Use the 'enum nvme_print_flags' type consistently everywhere.
Furthermore, move the flag as last argument where needed.

While at it also do properly indent the functions arguments.

Signed-off-by: Daniel Wagner <dwagner@suse.de>
22 months agonvme-print: Export generic to string functions
Daniel Wagner [Fri, 26 May 2023 14:00:12 +0000 (16:00 +0200)]
nvme-print: Export generic to string functions

These function do not print anything, thus can be shared between the
different output formats.

Signed-off-by: Daniel Wagner <dwagner@suse.de>
22 months agonvme-print: Double function definition
Daniel Wagner [Tue, 30 May 2023 07:45:48 +0000 (09:45 +0200)]
nvme-print: Double function definition

The json function is already defined in nvme-print-json.h header file.

Signed-off-by: Daniel Wagner <dwagner@suse.de>
22 months agoplugins/sfx: sfx-nvme add expand-cap & dump evtlog cmd
yjin [Mon, 22 May 2023 10:05:57 +0000 (18:05 +0800)]
plugins/sfx: sfx-nvme add expand-cap & dump evtlog cmd

Signed-off-by: yjin <yuekun.jin@scaleflux.com>
22 months agoutil/types: Add generic spinner
Wei Hou [Thu, 1 Jun 2023 18:15:33 +0000 (20:15 +0200)]
util/types: Add generic spinner

Signed-off-by: Wei Hou <wei.hou@scaleflux.com>
22 months agoutil/types: Move convert_ts to util/types
Wei Hou [Thu, 1 Jun 2023 18:07:07 +0000 (20:07 +0200)]
util/types: Move convert_ts to util/types

The time stamp converting function can be reused by various plugins.
Thus move it to the util section.

Signed-off-by: Wei Hou <wei.hou@scaleflux.com>
Signed-off-by: Daniel Wagner <dwagner@suse.de>
22 months agoplugin: Change version and usage names for linux kernel check patch warnings
Tokunori Ikegami [Fri, 2 Jun 2023 00:15:13 +0000 (09:15 +0900)]
plugin: Change version and usage names for linux kernel check patch warnings

Also change usage function as a static function since not used externally.

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
22 months agofabrics: prevent 'nvme connect' to well-known discovery NQN
Martin George [Mon, 29 May 2023 07:40:33 +0000 (13:10 +0530)]
fabrics: prevent 'nvme connect' to well-known discovery NQN

Using 'nvme connect' to connect to the well-known discovery NQN
could result in a few problems with the current implementation:

1) It does not explicitly disconnect from the discovery subsystem
after usage, thereby leading to a spurious discovery controller
on the host.

2) Multiple 'nvme connect' invocations to the well-known discovery
NQN would result in duplicate discovery controllers on the host.

All this is already handled in 'nvme discover'. So it would be
better to avoid using 'nvme connect' to connect to the well-known
discovery NQN in the first place, and use 'nvme discover' instead
for the same.

Signed-off-by: Martin George <marting@netapp.com>
22 months agoutil: Fix types.c linux kernel check patch warnings
Tokunori Ikegami [Sun, 28 May 2023 13:02:48 +0000 (22:02 +0900)]
util: Fix types.c linux kernel check patch warnings

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
22 months agoutil: Fix crc32.c linux kernel check patch errors and warnings
Tokunori Ikegami [Sun, 28 May 2023 12:58:00 +0000 (21:58 +0900)]
util: Fix crc32.c linux kernel check patch errors and warnings

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
22 months agoutil: Fix base64.c linux kernel check patch errors and warnings
Tokunori Ikegami [Sun, 28 May 2023 12:52:30 +0000 (21:52 +0900)]
util: Fix base64.c linux kernel check patch errors and warnings

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
22 months agoutil: Fix argconfig.c linux kernel check patch error and warnings
Tokunori Ikegami [Sun, 28 May 2023 12:47:06 +0000 (21:47 +0900)]
util: Fix argconfig.c linux kernel check patch error and warnings

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
22 months agoplugins/toshiba: Fix linux kernel check patch errors and warnings
Tokunori Ikegami [Sun, 28 May 2023 12:30:31 +0000 (21:30 +0900)]
plugins/toshiba: Fix linux kernel check patch errors and warnings

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
22 months agoplugin: Fix files linux kernel check patch errors and warnings
Tokunori Ikegami [Sun, 28 May 2023 11:58:24 +0000 (20:58 +0900)]
plugin: Fix files linux kernel check patch errors and warnings

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
22 months agoplugins/ocp: Fix remaining files linux kernel check patch warnings
Tokunori Ikegami [Sun, 28 May 2023 10:38:27 +0000 (19:38 +0900)]
plugins/ocp: Fix remaining files linux kernel check patch warnings

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
22 months agoplugins/ocp: Fix ocp-nvme.c linux kernel check patch warnings
Tokunori Ikegami [Sun, 28 May 2023 10:00:25 +0000 (19:00 +0900)]
plugins/ocp: Fix ocp-nvme.c linux kernel check patch warnings

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
22 months agoplugins/ocp: Fix ocp-nvme.c linux kernel check patch errors
Tokunori Ikegami [Sun, 28 May 2023 08:47:41 +0000 (17:47 +0900)]
plugins/ocp: Fix ocp-nvme.c linux kernel check patch errors

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
22 months agoplugins/solidigm: Added NLog support to Telemetry parsing.
leonardo.da.cunha [Sat, 22 Apr 2023 00:19:50 +0000 (17:19 -0700)]
plugins/solidigm: Added NLog support to Telemetry parsing.
Telemetry Reason Identifier fields changed to start with lower case.

Signed-off-by: leonardo.da.cunha <leonardo.da.cunha@solidigm.com>
23 months agonbft: Add include util/types.h
Daniel Wagner [Thu, 25 May 2023 17:52:58 +0000 (19:52 +0200)]
nbft: Add include util/types.h

util_uuid_to_string() is define in util/types.h, thus include it.

Signed-off-by: Daniel Wagner <dwagner@suse.de>
23 months agonbft: Add stdlib.h include
Daniel Wagner [Thu, 25 May 2023 17:51:29 +0000 (19:51 +0200)]
nbft: Add stdlib.h include

calloc() and free() are defined in stdlib.h, thus include the
definition.

Signed-off-by: Daniel Wagner <dwagner@suse.de>
23 months agonbft: Make json-c output depending on config flag
Daniel Wagner [Thu, 25 May 2023 17:49:47 +0000 (19:49 +0200)]
nbft: Make json-c output depending on config flag

In case json-c is not available avoid compilation errors.

Signed-off-by: Daniel Wagner <dwagner@suse.de>
23 months agonvme-print-json: Update function sigs for !json-c builds
Daniel Wagner [Thu, 25 May 2023 17:37:09 +0000 (19:37 +0200)]
nvme-print-json: Update function sigs for !json-c builds

The json_output_* function got updated, but the !json-c case was not
updated accordingly. Update them now.

Fixes: e853da696ea4 ("nvme-print-json: Add json output result function")
Fixes: 6e3e1cc8d5b2 ("nvme: Add nvme_show_perror to use instead of perror for json output")
Fixes: 2b0bc4d824d0 ("nvme-printf: Add show error function for nvme list command json output")
Signed-off-by: Daniel Wagner <dwagner@suse.de>
23 months agobuild: Do not use json-c fallback for muon minimal build
Daniel Wagner [Thu, 25 May 2023 17:31:55 +0000 (19:31 +0200)]
build: Do not use json-c fallback for muon minimal build

Configure the muon minimal build without using the json-c
fallback. This ensures that the case where json-c is not
available is also compile tested.

Signed-off-by: Daniel Wagner <dwagner@suse.de>
23 months agoocp: Add eol plp failure mode json outputs
Tokunori Ikegami [Sun, 21 May 2023 15:55:52 +0000 (00:55 +0900)]
ocp: Add eol plp failure mode json outputs

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
23 months agonvme-print: Add nvme show result function
Tokunori Ikegami [Sun, 21 May 2023 15:54:02 +0000 (00:54 +0900)]
nvme-print: Add nvme show result function

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
23 months agonvme-print-json: Add json output result function
Tokunori Ikegami [Sun, 21 May 2023 15:51:52 +0000 (00:51 +0900)]
nvme-print-json: Add json output result function

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
23 months agonvme-print: Fix nvme_show_error() to call va_end() for json output format
Tokunori Ikegami [Sun, 21 May 2023 14:08:02 +0000 (23:08 +0900)]
nvme-print: Fix nvme_show_error() to call va_end() for json output format

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
23 months agonvme: Fix nvme format block-size option handling
Mateusz Kozlowski [Tue, 23 May 2023 13:14:26 +0000 (15:14 +0200)]
nvme: Fix nvme format block-size option handling

nlbaf returned by id-ns is a 0 based value, so the previous handling of
the loop skipped checking the last lbaf.

Signed-off-by: Mateusz Kozlowski <mateusz.kozlowski@solidigm.com>
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>