NVME-WDC-VS-SMART(1)
π NVME-WDC-VS-SMART(1) β like, the nvme-wdc-vs-smart-add-log page bestie π
okay so real quick before we dive in: this is a page from the NVMe Manual (yes, that one) and it's all about one very specific little vendor command. pull up a chair, we're getting into it π«Ά
β¨ NAME β¨
nvme-wdc-vs-smart-add-log β sends the NVMe WDC vs-smart-add-log Vendor Unique Command, and hands you back the result. that's it, that's the whole vibe π
π¦ SYNOPSIS π¦
nvme [<global-options>] wdc vs-smart-add-log <device>
[--interval=<NUM>, -i <NUM>]
[--log-page-version=<NUM>, -l <NUM>]
[--log-page-mask=<LIST>, -p <LIST>]
[--namespace-id=<nsid> | -n <nsid>]
πΈ DESCRIPTION πΈ
so for the NVMe device you point at, this sends a Vendor Unique WDC vs-smart-add-log command and gives you the additional smart log. iconic behavior honestly β¨
the <device> parameter is mandatory β no skipping it, bestie β and it can be either the NVMe character device (ex: /dev/nvme0) or the block device (ex: /dev/nvme0n1). either one slaps, pick your fighter.
β οΈ heads up: this only works on WDC devices that support this feature. on any other device the results are undefined β like, literally undefined, don't come for me π
on success it returns 0. otherwise you get an error code. that's the whole deal π
π OPTIONS π
-i <NUM>,--interval=<NUM>β returns the statistics from a specific interval; defaults to14. ngl this one is only valid for the0xC1log page and gets straight-up ignored for every other log page π-l <NUM>,--log-page-version=<NUM>β log page version:0= vendor,1= WDC. this is only valid for the0xC0log page and is ignored for all the other log pages, periodt π-p <LIST>,--log-page-mask=<LIST>β hand it a comma separated list of the log pages you actually want displayed. possible values are0xc0,0xc1,0xca,0xd0. note: not all pages are supported on all drives (rude, but true). the default is to display all the supported log pages β¨-n <nsid>,--namespace-id=<nsid>β sets the command's nsid value to the nsid you give it. defaults to0xffffffffif you don't give one. this option may not affect anything depending on the log page, since the log page may or may not be specific to a namespace. the broadcast value0xffffffffcan also be written asallor-1π«Ά
β Valid Interval values and description :- β
okay this was a table in the original and i'm giving it to you as a list because we're in a terminal and we keep it cute:
1β Most recent five (5) minute accumulated set.2-12β Previous five (5) minute accumulated sets.13β The accumulated total of sets 1 through 12 that contain the previous hour of accumulated statistics.14β The statistical set accumulated since power-up.15β The statistical set accumulated during the entire lifetime of the device.
π GLOBAL OPTIONS π
these bad boys are defined at the top-level nvme command and they're available to this subcommand too. main character energy fr fr:
--dry-runβ prints the command that would be executed, but does not actually execute it. all talk, no action, love that for us π--no-ioctl-probingβ disables probing for 64-bit IOCTL support.--no-retriesβ disables retry logic on transient errors.-o <fmt>,--output-format=<fmt>β sets the reporting format tonormal,tabular,'json, orbinary. only one output format at a time, don't be greedy π--output-format-version=<version>β selects the output format version. version1uses the original field naming, while version2(the default) gives you more consistent and script-friendly field names. other versions are rejected. no cap π₯--quietβ suppresses informational messages. errors are still reported, and--quietcancels any--verbosefor the library log level. shhh π€«--set-options=<key=value>[,<key=value>...]β sets libnvme library options for this invocation. supported keys areforce-4k,mi-probe-enabled,test-base-dirandtest-sysfs-dir.--timeout=<ms>β sets the timeout for the command in milliseconds.infiniteor-1waits without a time limit (0xffffffff). patient queen behavior β³-v,--verboseβ increases the level of detail in the output. may be specified multiple times to further increase verbosity. go off, stack them π
these options can also be set as machine-wide defaults in nvme-cli.conf(5). a command-line flag always overrides the file. always. no discussion π
π§ EXAMPLES π§
- has the program issue the WDC vs-smart-add-log Vendor Unique Command with the default interval (
14):
# nvme wdc vs-smart-add-log /dev/nvme0
- has the program issue the WDC vs-smart-add-log Vendor Unique Command for just the
0xCAlog page:
# nvme wdc vs-smart-add-log /dev/nvme0 -p 0xCA
- has the program issue the WDC vs-smart-add-log Vendor Unique Command for the
0xC0and0xCAlog pages:
# nvme wdc vs-smart-add-log /dev/nvme0 -p 0xCA,0xC0
π NVME π
part of the nvme-user suite. one of us, one of us πΈ
and that's the whole page, bestie!! written by the NVMe crew, dated 10/30/2026, version vibes courtesy of NVMe β go forth and read your smart logs, you absolute icon ππβ¨
π¦ where this page comes from
- arch rolling: nvme-cli 3.2-1 Β· GPL-2.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms