NVME-GET-LBA-STAT(1)

🌸 nvme-get-lba-status β€” get that LBA Status bestie πŸ’…

okay so picture this: you're deep in the nvme manual (yes, the NVMe one, NVME-GET-LBA-STAT(1), hi πŸ‘‹) and you need the LBA Status out of your device. That's literally this page. Let's go πŸŽ€


✨ NAME ✨

nvme-get-lba-status β€” Get LBA Status from NVMe device. that's it, that's the whole vibe πŸ¦‹


✨ SYNOPSIS ✨

nvme [<global-options>] get-lba-status <device>
                        [--namespace-id=<nsid> | -n <nsid>]
                        [--start-lba=<slba> | -s <slba>]
                        [--max-dw=<max-dw> | -m <max-dw>]
                        [--action=<action-type> | -a <action-type>]
                        [--range-len=<range-len> | -l <range-len>]

✨ DESCRIPTION ✨

So for the NVMe device you hand it, this sends an nvme Get LBA Status admin command and gives you the results back. iconic behavior, no cap πŸ‘‘

The <device> parameter is mandatory β€” like, not optional, bestie β€” and it can be either the NVMe character device (ex: /dev/nvme0), or a namespace block device (ex: /dev/nvme0n1). either one, pick your fighter πŸ’–

On success, the returned get lba data structure may be returned in one of several ways depending on the option flags; the structure may parsed by the program and printed in a readable format or the raw buffer may be printed to stdout for another program to parse. so: pretty version for your eyeballs, or raw buffer for your scripts. both slay, just different vibes ✨


✨ OPTIONS ✨

  • -n <nsid>, --namespace-id=<nsid> β€” Send the Get LBA Status command for the specified nsid. This can be used to override the default value for either character device (unspecified) or the block device (result from NVME_IOCTL_ID). The broadcast value 0xffffffff can also be given as all or -1. yes, all, yes, -1, it ate πŸ’…
  • -s <slba>, --start-lba=<slba> β€” Starting LBA(SLBA) in 64-bit address of the first logical block addressed. the starting point, the main character of the range 🌟
  • -m <max-dw>, --max-dw=<max-dw> β€” Maximum Number of Dwords(MNDW) specifies maximum number of dwords to return. cap it, bestie 🧒
  • -a <action-type>, --action=<action-type> β€” Action Type(ATYPE) specifies the mechanism it uses in determining the LBA Status Descriptors. the whole ~method~ of the thing 🧚
  • -l <range-len>, --range-len=<range-len> β€” Range Length(RL) specifies the length of the range of contiguous LBAs beginning at SLBA. how far we're going from the start line, periodt πŸŽ€

✨ GLOBAL OPTIONS ✨

The following options are defined at the top-level nvme command and are available to this subcommand β€” so they're like, family privileges, not just this page's πŸ’œ

  • --dry-run β€” Print the command that would be executed, but do not actually execute it. manifesting without the consequences, lowkey obsessed πŸ™ˆ
  • --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. pick one, don't be greedy πŸ’…
  • --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. v2 is the default, she's the moment ⭐
  • --quiet β€” Suppress informational messages. Errors are still reported, and --quiet cancels any --verbose for the library log level. shhh 🀫 but errors still get to speak, as they should
  • --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). wait forever, queen πŸ•°οΈ
  • -v, --verbose β€” Increase the level of detail in the output. May be specified multiple times to further increase verbosity. stack it, more -v more lore πŸ“š
These options can also be set as machine-wide defaults in nvme-cli.conf(5). A command-line flag always overrides the file. rules are rules 🫢

✨ EXAMPLES ✨

  • Get the LBA Status of the device using all defaults:
# nvme get-lba-status /dev/nvme0n1
  • Get LBA Status of the namespace 1 from SLBA 10 for the max Dwords of 0x1000
# nvme get-lba-status /dev/nvme0 --namespace-id=1 --start-lba=10 --max-dw=0x1000

✨ NVME ✨

Part of the nvme-user suite πŸ’–


and that's the whole page, bestie πŸ¦‹βœ¨ this was NVMe's manual, dated 10/30/2026, and yes it's from the nvme-user suite β€” go get that LBA Status, you're gonna eat πŸ”₯πŸ‘‘

πŸ“¦ where this page comes from