NVME-FEAT-INT-VEC(1)

πŸ“¦ version 3.2, in arch rolling

πŸ’… nvme-feat-int-vector-config β€” bestie edition πŸŽ€

okay so real talk, this little cutie lives in the nvme manual (like, the whole nvme-user suite family), and it's the one you call when you wanna peek at β€” or totally redo β€” your interrupt vector configuration feature. yes it's a mouthful, no we're not changing the name, it's iconic. ✨

🌸 SYNOPSIS 🌸

nvme [<global-options>] feat int-vector-config <device>
                        [--iv=<iv> | -i <iv>] [--cd | -c]
                        [--sel=<select> | -S <select>] [--save | -s]

πŸ’– DESCRIPTION πŸ’–

So. This command gets and sets the interrupt vector configuration feature. Both. A dual threat. πŸ‘‘

The <device> parameter is mandatory, no skipping it bestie β€” and it can be either the NVMe character device (ex: /dev/nvme0), or a namespace block device (ex: /dev/nvme0n1).

Here's the vibe check on how it decides what to do: if you pass any of the setting options (--iv or --cd), the command will update the interrupt vector configuration. If you pass none of them, it just retrieves and displays the current configuration. literally minding its own business. πŸ¦‹

On success it returns 0, error code otherwise.

✨ OPTIONS ✨

  • -i <iv>, --iv=<iv> β€” Interrupt Vector. Tells the command which interrupt vector to use for this configuration. The value is the number of the interrupt vector. simple as that πŸ’…
  • -c, --cd β€” Coalescing Disable. When set, this flag disables interrupt coalescing for the specified interrupt vector. no merging, no combining, we said what we said 🫢
  • -S <select>, --sel=<select> β€” Select (SEL): this field specifies which value of the attributes to return in the provided data:
    • 0 β€” current β€” Current
    • 1 β€” default β€” Default
    • 2 β€” saved β€” Saved
    • 3 β€” supported β€” Supported capabilities
  • -s, --save β€” Save the attribute so that it persists through all power states and resets. she stays. she does not leave. πŸ”₯

🧚 GLOBAL OPTIONS 🧚

These ones are defined at the top-level nvme command, and they're available to this subcommand too β€” shared custody, we love to see it:

  • --dry-run β€” Print the command that would be executed, but do not actually execute it. manifesting without the consequences ✨
  • --no-ioctl-probing β€” Disable probing for 64-bit IOCTL support.
  • --no-retries β€” Disable retry logic on transient errors. one shot, one opportunity 😭
  • -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. pick a lane bestie, we can't do all four πŸ’€
  • --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. Other versions are rejected. ngl the glow-up is real 🌈
  • --quiet β€” Suppress informational messages. Errors are still reported, and --quiet cancels any --verbose for the library log level. (they fight, only one wins πŸ₯Š)
  • --set-options=<key=value>[,<key=value>...] β€” Set libnvme library options for this invocation. Supported keys are force-4k, mi-probe-enabled, test-base-dir and test-sysfs-dir.
  • --timeout=<ms> β€” Set the timeout for the command in milliseconds. infinite or -1 waits without a time limit (0xffffffff). the deadline is fake, time is a construct πŸ•°οΈ
  • -v, --verbose β€” Increase the level of detail in the output. May be specified multiple times to further increase verbosity. stack it, queen πŸ“š
πŸ’‘ These options can also be set as machine-wide defaults in nvme-cli.conf(5). A command-line flag always overrides the file β€” command line is main character energy, the file is just supporting cast. πŸ‘‘

πŸ“ EXAMPLES πŸ“

  • Has the program issue a feat int-vector-config to get the current configuration:
# nvme feat int-vector-config /dev/nvme0
  • Has the program issue a feat int-vector-config to set the interrupt vector and disable coalescing:
# nvme feat int-vector-config /dev/nvme0 --iv=0 --cd --save

πŸ’œ NVME πŸ’œ

Part of the nvme-user suite. one big happy family 🫢


and that's the whole page, bestie β€” no cap, every flag accounted for. 🌟

sign-off szn: this was the NVMe manual, dated 10/30/2026 (mark your calendars πŸ’–), brought to you by NVMe. go forth and configure those interrupt vectors. πŸ’…βœ¨

πŸ“¦ where this page comes from