NAME¶
nvme-sndk-vs-internal-log - Retrieve sndk device's internal
firmware log and save to file.
SYNOPSIS¶
nvme [<global-options>] sndk vs-internal-log <device>
[--output-file=<FILE>, -O <FILE>]
[--transfer-size=<SIZE>, -s <SIZE>]
[--data-area=<DATA AREA>, -d <DATA_AREA>]
[--file-size=<FILE SIZE>, -f <FILE SIZE>]
[--offset=<OFFSET>, -e <OFFSET>]
[--type=<TYPE>, -t <type>]
DESCRIPTION¶
For the NVMe device given, sends the sndk Vendor Specific Internal
Log request and saves the result to a file.
The <device> parameter is mandatory NVMe character device
(ex: /dev/nvme0).
This will only work on Sandisk devices supporting this feature.
Results for any other device are undefined.
OPTIONS¶
-O <FILE>, --output-file=<FILE>
Output file; defaults to device serial number followed by
"internal_fw_log<date>_<time>.bin" suffix
-s <SIZE>, --transfer-size=<SIZE>
Transfer size; defaults to 0x10000 (65536 decimal)
bytes
-d <DATA AREA>, --data-area=<DATA AREA>
Data area to retrieve. For capture with a --type value
that includes telemetry (CONTROLLER, HOST, or BOTH), this specifies the NVMe
telemetry data area to capture, containing data from areas 1 to <DATA
AREA>. For capture without such a --type value, this specifies the amount
of vendor defined debug data to capture, and this is only supported on the
SN340, SN350, SN530, SN570, SN730, SN740, SN840, SN850X, SN5000, SN5100S,
SN7000S, SN7100, and SN7150 devices.
-t <TYPE>, --type=<TYPE>
Specifies the telemetry type - NONE, HOST, CONTROLLER, or
BOTH. This parameter is used to get either the host-initiated or controller-
initiated telemetry log page. If BOTH is specified, both host and controller
telemetry are captured and packaged into a tar archive. If not specified or if
<TYPE> is NONE, the command will return vendor defined debug data.
-f <FILE SIZE>, --file-size=<FILE SIZE>
Deprecated. Specifies the desired size of the data file
starting at the passed in offset. This allows the user to retrieve the data in
several smaller files of the passed in size. This parameter is only supported
on the devices mentioned in the documentation of the --data-area parameter,
and only for capture with --type=NONE or --type not specified.
-e <OFFSET>, --offset=<OFFSET>
Deprecated. Specifies the data offset at which to start
retrieving the data. This parameter is used in combination with the file size
parameter to retrieve the data in several smaller files. This parameter is
only supported on the devices mentioned in the documentation of the
--data-area parameter, and only for capture with --type=NONE or --type not
specified.
GLOBAL OPTIONS¶
The following options are defined at the top-level nvme command
and are available to this subcommand:
--dry-run
Print the command that would be executed, but do not
actually execute it.
--no-ioctl-probing
Disable probing for 64-bit IOCTL support.
--no-retries
Disable retry logic on transient errors.
-o <fmt>, --output-format=<fmt>
Set the reporting format to normal, tabular,
'json, or binary. Only one output format may be used at a
time.
--output-format-version=<version>
Select the output format version. Version 1 uses
the original field naming, while version 2 (default) provides more
consistent and script-friendly field names.
--timeout=<ms>
Set the timeout for the command in milliseconds.
-v, --verbose
Increase the level of detail in the output. May be
specified multiple times to further increase verbosity.
These options can also be set as machine-wide defaults in
nvme-cli.conf(5). A command-line flag always overrides the file.
EXAMPLES¶
•Gets the internal firmware log from the device
and saves to default file in current directory (e.g.
STM00019F3F9_internal_fw_log_20171127_095704.bin):
# nvme sndk vs-internal-log /dev/nvme0
•Gets the internal firmware log from the device
and saves to defined file in current directory (e.g. test.bin):
# nvme sndk vs-internal-log /dev/nvme0 -O test.bin
•Gets the internal firmware log from the device
and saves to defined file with pathname (e.g. /tmp/test):
# nvme sndk vs-internal-log /dev/nvme0 -O /tmp/test
•Gets the internal firmware log from the device
transferring the data in 64k chunks and saves to default file in current
directory (e.g. STM00019F3F9_internal_fw_log_20171127_100754.bin):
# nvme sndk vs-internal-log /dev/nvme0 -s 0x10000
•Gets the internal firmware log from the device
transferring the data in 16k chunks and saves to default file in current
directory (e.g. STM00019F3F9_internal_fw_log_20171127_100950.bin):
# nvme sndk vs-internal-log /dev/nvme0 -s 16384
•Gets the internal firmware log up to data area 3
from the device in 3 files of 0x1000000 bytes:
# nvme sndk vs-internal-log /dev/nvme0 -d 3 -f 0x1000000 -t 0x0000000 -O /tmp/sn340_dui_data_1.bin
# nvme sndk vs-internal-log /dev/nvme0 -d 3 -f 0x1000000 -t 0x1000000 -O /tmp/sn340_dui_data_2.bin
# nvme sndk vs-internal-log /dev/nvme0 -d 3 -f 0x1000000 -t 0x2000000 -O /tmp/sn340_dui_data_3.bin
•Gets the host telemetry log page to data area 3
from the device and stores it in file host-telem-log-da3.bin:
# nvme sndk vs-internal-log /dev/nvme1 -t host -O host-telem-log-da3.bin -d 3
•Gets the controller telemetry log page to data
area 3 from the device and stores it in file ctlr-telem-log-da3.bin:
# nvme sndk vs-internal-log /dev/nvme1 -t controller -O ctlr-telem-log-da3.bin -d 3
•Gets both host and controller telemetry log pages
to data area 3 from the device and packages them in a tar file:
# nvme sndk vs-internal-log /dev/nvme1 -t both -O both-telem-log-da3.tar -d 3
NVME¶
Part of the nvme-user suite.