nvme-set-feature - Man Page

Sets an NVMe feature, returns applicable results

Synopsis

nvme set-feature <device> [--namespace-id=<nsid> | -n <nsid>]
                        [--feature-id=<fid> | -f <fid>] [--value=<value> | -V <value>]
                        [--uuid-index=<uuid-index> | -U <uuid_index>]
                        [--data-len=<data-len> | -l <data-len>]
                        [--data=<data-file> | -d <data-file>] [--save | -s]
                        [--output-format=<fmt> | -o <fmt>] [--verbose | -v]
                        [--cdw12=<cdw12> | -c <cdw12>]
                        [--timeout=<timeout> | -t <timeout>]

Description

Submits an NVMe Set Feature admin command and returns the applicable results​. This may be the feature’s value, or may also include a feature structure if the feature requires it (ex: LBA Range Type)​.

The <device> parameter is mandatory and may be either the NVMe character device (ex: /dev/nvme0), or a namespace block device (ex: /dev/nvme0n1)​.

On success, the value sent to the device is displayed

Options

-n <nsid>, --namespace-id=<nsid>

Sets the feature for the given nsid​. This is optional and most features do not use this value​.

-f <fid>, --feature-id=<fid>

The feature id to send with the command​. Value provided should be in hex​.

ValueDefinition
0x01 | arbitrationArbitration
0x02 | power-mgmtPower Management
0x03 | lba-rangeLBA Range Type
0x04 | temp-threshTemperature Threshold
0x05 | err-recoveryError Recovery
0x06 | volatile-wcVolatile Write Cache
0x07 | num-queuesNumber of Queues
0x08 | irq-coalesceInterrupt Coalescing
0x09 | irq-configInterrupt Vector Configuration
0x0a | write-atomicWrite Atomicity Normal
0x0b | async-eventAsynchronous Event Configuration
0x0c | auto-pstAutonomous Power State Transition
0x0d | host-mem-bufHost Memory Buffer
0x0e | timestampTimestamp
0x0f | katoKeep Alive Timer
0x10 | hctmHost Controlled Thermal Management
0x11 | nopscNon-Operational Power State Config
0x12 | rrlRead Recovery Level Config
0x13 | plm-configPredictable Latency Mode Config
0x14 | plm-windowPredictable Latency Mode Window
0x15 | lba-sts-intervalLBA Status Information Report Interval
0x16 | host-behaviorHost Behavior Support
0x17 | sanitizeSanitize Config
0x18 | endurance-evt-cfgEndurance Group Event Configuration
0x19 | iocs-profileI/O Command Set Profile
0x1a | spinup-controlSpinup Control
0x1b | power-loss-signalPower Loss Signaling Config
0x1c | perf-characteristicsPerformance Characteristics
0x1d | fdpFlexible Data Placement
0x1e | fdp-eventsFDP Events
0x1f | ns-admin-labelNamespace Admin Label
0x20 | key-valueKey Value Configuration
0x21 | ctrl-data-queueController Data Queue
0x78 | emb-mgmt-ctrl-addrEmbedded Management Controller Address
0x79 | host-mgmt-agent-addrHost Management Agent Address
0x7d | enh-ctrl-metadataEnhanced Controller Metadata
0x7e | ctrl-metadataController Metadata
0x7f | ns-metadataNamespace Metadata
0x80 | sw-progressSoftware Progress Marker
0x81 | host-idHost Identifier
0x82 | resv-maskReservation Notification Mask
0x83 | resv-persistReservation Persistence
0x84 | write-protectNamespace Write Protection Config
0x85 | bp-write-protectBoot Partition Write Protection Config
-l <data-len>, --data-len=<data-len>

The data length for the buffer submitted for this feature​. Most known features do not use this value​. The exceptions are LBA Range Type and host identifier​.

-d <data-file>, --data=<data-file>

The data file for the buffer submitted for this feature​. Most known features do not use this value​. The exceptions is LBA Range Type and host identifier​. This defaults to STDIN so files and echo can be piped​.

-V <value>, --value=<value>

The value for command dword 11, the value you want to set the feature to​.

-s,  --save

Save the attribute so that it persists through all power states and resets​.

-U <uuid-index>, --uuid-index=<uuid-index>

UUID Index of the feature

-o <fmt>, --output-format=<fmt>

Set the reporting format to normal, json or binary​. Only one output format can be used at a time​.

-v,  --verbose

Increase the information detail in the output​.

-c <cdw12>, --cdw12=<cdw12>

The value for command dword 12, if applicable​.

-t <timeout>, --timeout=<timeout>

Override default timeout value​. In milliseconds​.

Examples

Nvme

Part of the nvme-user suite

Referenced By

nvme(1).

08/18/2026 NVMe Manual