nvme-get-lba-status · shipping · also Get LBA Status (NVMe), nvme get-lba-status

NVMe Get LBA Status

NVMe Get LBA Status is an optional administrative command that reports selected allocation or potentially unrecoverable-block information for a namespace LBA range.

Related Observatory article: NVMe Get LBA Status on hesela.com

Action type 02h requests tracked allocated LBAs; 10h scans for untracked and also returns tracked potentially unrecoverable LBAs; 11h requests tracked potentially unrecoverable LBAs. The 10h scan examines internal controller data structures, not necessarily every block's payload. These are distinct queries, not interchangeable health scores. [2] [1]

In NVM Command Set 1.2, allocation reporting uses AOCS.RALBAS support; the error-oriented actions use OACS.GLSS. Allocation reporting can include deallocated blocks within a mixed tracking unit. A returned range need not consist entirely of unreadable blocks. [1]

Read completion condition (CMPC) separately from descriptor count. The value 0 gives no completion indication, 1 means incomplete, and 2 reports that the selected action completed over the requested range with no additional descriptors remaining. An empty list alone is not evidence of a healthy namespace. [3]

Retain the namespace, starting LBA, range length, action, response-size limit and command outcome with a capture. JSON or readable formatting does not broaden the requested scope. [4]

Field encodings differ: RL=0 extends from SLBA through NSZE-1; MNDW and descriptor NLB are zero-based quantities. Thus NLB=0 describes one block, not an empty extent. Preserve raw values and their encoding. [1]

Relations

related
SCSI GET LBA STATUS, NVMe namespace, NVMe Write Uncorrectable, NVMe Media and Data Integrity Errors

Limitations

  • This command is not the SCSI provisioning command of the same name; compare protocol, action and supported revision before interpreting a report. [1]
  • Controller-reported LBA status does not validate filesystem block identity or application-level content. [5]

Citations

  1. NVM Command Set 1.2, sections 4.1.5.4, 4.2.1 and 5.2.1; Figures 120, 130-132. Copyright 2008-2025 NVM Express, Inc. All rights reserved. (accessed 2026-11-08)
  2. libnvme v1.15: nvme_lba_status_atype (accessed 2026-11-08)
  3. nvme-cli v2.13: stdout_lba_status completion and descriptor output (accessed 2026-11-08)
  4. nvme-cli v2.11: Get LBA Status command options (accessed 2026-11-08)
  5. Bairavasundaram et al. An Analysis of Data Corruption in the Storage Stack. FAST 2008, sections 2.2-2.3 and 3. (accessed 2026-11-08)
Sources & caveats
  • Primary-source interpretation of pinned NVM Command Set 1.2, libnvme v1.15 and nvme-cli documentation/source. No controller command, device scan or hardware experiment was performed.

JSON: /data/terms/nvme-get-lba-status.json

Published by Hesela team · Updated

Report a correction · Editorial standards · Reuse guidance

Cite this page
Hesela team. NVMe Get LBA Status. Hesela. 2026-11-08. https://hesela.dev/terms/nvme-get-lba-status/