libnvme(9)
π NAME
enum nvme_status_result β the vibe check for your device self-test, aka the Result of the device self-test operation β¨
Bestie, this is the little enum that tells you how your device self-test went. Did it slay? Did it flop? Did it get unalived mid-test by a reset? All the answers live here π
πΈ SYNOPSIS
enum nvme_status_result {
NVME_ST_RESULT_NO_ERR ,
NVME_ST_RESULT_ABORTED ,
NVME_ST_RESULT_CLR ,
NVME_ST_RESULT_NS_REMOVED ,
NVME_ST_RESULT_ABORTED_FORMAT ,
NVME_ST_RESULT_FATAL_ERR ,
NVME_ST_RESULT_UNKNOWN_SEG_FAIL ,
NVME_ST_RESULT_KNOWN_SEG_FAIL ,
NVME_ST_RESULT_ABORTED_UNKNOWN ,
NVME_ST_RESULT_ABORTED_SANITIZE ,
NVME_ST_RESULT_NOT_USED ,
NVME_ST_RESULT_SHIFT ,
NVME_ST_RESULT_MASK
};
π CONSTANTS
Okay so here's the whole roster, no skips, fr fr:
NVME_ST_RESULT_NO_ERRβ the main character moment π Operation completed without error. Literally the dream.NVME_ST_RESULT_ABORTEDβ Operation was aborted by a Device Self-test command. Not me getting canceled by my own command πNVME_ST_RESULT_CLRβ Operation was aborted by a Controller Level Reset. The reset said "nope, we're done here" πNVME_ST_RESULT_NS_REMOVEDβ Operation was aborted due to a removal of a namespace from the namespace inventory. The namespace literally left the chat π¦NVME_ST_RESULT_ABORTED_FORMATβ Operation was aborted due to the processing of a Format NVM command. Format came in and ate πNVME_ST_RESULT_FATAL_ERRβ A fatal error or unknown test error occurred while the controller was executing the device self-test operation and the operation did not complete. Yeahβ¦ that's a red flag bestie π₯ not iconic at all.NVME_ST_RESULT_UNKNOWN_SEG_FAILβ Operation completed with a segment that failed and the segment that failed is not known. It flopped, but we don't know which part flopped π mysterious behavior honestly.NVME_ST_RESULT_KNOWN_SEG_FAILβ Operation completed with one or more failed segments and the first segment that failed is indicated in the Segment Number field. At least we got receipts β¨ go check the Segment Number field, iykyk.NVME_ST_RESULT_ABORTED_UNKNOWNβ Operation was aborted for unknown reason. No explanation, just chaos πNVME_ST_RESULT_ABORTED_SANITIZEβ Operation was aborted due to a sanitize operation. The sanitize said "excuse me, I'm busy" πNVME_ST_RESULT_NOT_USEDβ Entry not used (does not contain a test result). Empty slot, nothing to see here, move along πNVME_ST_RESULT_SHIFTβ Device self-test result shift. The shift, the shifter, the one who shifts π§NVME_ST_RESULT_MASKβ Mask to get the status result value from the structnvme_st_result.dstsfield. Use this to actually pull the value out ofstruct nvme_st_result.dstsβ it's giving "unlock the lore" π
Lowkey the whole point:NVME_ST_RESULT_SHIFTandNVME_ST_RESULT_MASKare your tools for extracting the status result value out of thestruct nvme_st_result.dstsfield. That's literally whatNVME_ST_RESULT_MASKis for, periodt.
β¨ That's the whole page bestie, every constant accounted for, not one skipped π
October 2026, API Manual for libnvme, section 9 β catch you in the next man page, mwah π«Άπ
π¦ 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