libnvme(2)
π NAME π
enum nvme_crto β this field is literally the whole vibe of the controller ready timeouts, bestie. That's it, that's the enum.
So you already know it lives in the libnvme(2) API manual, right? Like, this is page two of the libnvme family, and it's a tiny lil' enum doing big things.
β¨ SYNOPSIS β¨
enum nvme_crto {
NVME_CRTO_CRWMT_SHIFT ,
NVME_CRTO_CRIMT_SHIFT ,
NVME_CRTO_CRWMT_MASK ,
NVME_CRTO_CRIMT_MASK
};
okay so it's four members, no cap. Two shifts, two masks. That's the whole squad. π«Ά
πΈ Constants πΈ
These are the four besties that make up enum nvme_crto. Each one is a little key that helps you pull a specific timeout value out of the controller-ready-timeouts field.
NVME_CRTO_CRWMT_SHIFTβ the shift amount you use to get the controller ready with media timeout. (shift it, bestie β¨)NVME_CRTO_CRIMT_SHIFTβ the shift amount you use to get the controller ready independent of media timeout. (the independent one, she does her own thing π)NVME_CRTO_CRWMT_MASKβ the mask that gets you the controller ready with media timeout. (mask on, never mask off π )NVME_CRTO_CRIMT_MASKβ the mask that gets you the controller ready independent of media timeout. (masked and unbothered π)
ngl the naming is doing the most here βCRWMT= Controller Ready With Media Timeout,CRIMT= Controller Ready Independent of Media Timeout. Shift when you wanna slide it, mask when you wanna grab it. That's the pattern, iykyk. π
okay that's the whole page babes, mwah π This was enum nvme_crto out of the libnvme(2) manual β the API Manual, July 2026 edition. Go forth and unmask those timeouts, main character. πβπ¦
π¦ 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