libnvme(2)
β¨ NAME β¨
okay so bestie, welcome to libnvme β this page is literally all about enum nvme_status_result, aka the Result of the device self-test operation. that's it, that's the whole vibe π
πΈ 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_MASK
};
π Constants π
okay so here's the whole cast of characters, one by one, no skipping, we do not leave a single constant on read π«Ά
NVME_ST_RESULT_NO_ERRβ bestie the operation finished and nothing went wrong. no error, we ate, we're slaying β¨NVME_ST_RESULT_ABORTEDβ a Device Self-test command came in and aborted the whole operation. it got interrupted, rip πNVME_ST_RESULT_CLRβ the operation got aborted by a Controller Level Reset. everything got reset mid-vibe, it's giving chaos πNVME_ST_RESULT_NS_REMOVEDβ the operation was aborted because a namespace got removed from the namespace inventory. they literally pulled the rug out from under it πNVME_ST_RESULT_ABORTED_FORMATβ the operation was aborted because aFormat NVMcommand was being processed. format said "not today" and the self-test had to go π§NVME_ST_RESULT_FATAL_ERRβ a fatal error or an unknown test error popped off while the controller was executing the device self-test operation, and the operation did not complete. not the ending we wanted, ngl πNVME_ST_RESULT_UNKNOWN_SEG_FAILβ the operation completed, but with a segment that failed β except we don't know which segment failed. mystery fail, no receipts πNVME_ST_RESULT_KNOWN_SEG_FAILβ the operation completed with one or more failed segments, and the first segment that failed is indicated in the Segment Number field. okay so at least we know who did it πNVME_ST_RESULT_ABORTED_UNKNOWNβ the operation was aborted and the reason is... unknown. genuinely no clue, it's giving mysterious π«οΈNVME_ST_RESULT_ABORTED_SANITIZEβ the operation was aborted because of a sanitize operation. sanitize said "move, I'm the main character" πNVME_ST_RESULT_NOT_USEDβ this entry isn't used at all, it does not contain a test result. empty, blank, nothing to see here π«₯NVME_ST_RESULT_MASKβ a mask, bestie! it gets the status result value out of thestruct nvme_st_result.dstsfield. it's the little extraction tool that pulls the answer out of the struct β¨
k but fr fr, remember these are the only values, andNVME_ST_RESULT_MASKhas one specific job: pulling the status result value out of thatstruct nvme_st_result.dstsfield. don't use it for anything else, that's the whole point of it π«Ά
and that's the page! this lil API manual moment, enum nvme_status_result, came from libnvme(2) and is dated July 2026 β version libnvme, baby. mwah, go read the source, ily πππ¦
π¦ where this page comes from
- ubuntu stonking: libnvme-dev 1.16.2-1build1 Β· LGPL-2.1-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms