libnvme(2)
π NAME π
bestie, welcome to libnvme(2) β this is the page for enum nvme_id_ctrl_kpioc, aka the Key Per I/O Capabilities enum π
β¨ SYNOPSIS β¨
enum nvme_id_ctrl_kpioc {
NVME_CTRL_KPIOC_KPIOS_SHIFT ,
NVME_CTRL_KPIOC_KPIOSC_SHIFT ,
NVME_CTRL_KPIOC_KPIOS_MASK ,
NVME_CTRL_KPIOC_KPIOSC_MASK
};
likeβ¦ it's an enum, it's four constants, it's giving "tiny but mighty" π¦
πΈ Constants πΈ
okay so these are the little integer besties you use to dig the actual values out of the struct nvme_id_ctrl.kpioc field. shifts and masks, the classic duo π
NVME_CTRL_KPIOC_KPIOS_SHIFTβ the shift amount you use to pull the Key Per I/O Supported value out of thestruct nvme_id_ctrl.kpiocfield. shift it, bestie πNVME_CTRL_KPIOC_KPIOSC_SHIFTβ the shift amount you use to pull the Key Per I/O Scope value out of thestruct nvme_id_ctrl.kpiocfield. same energy, different field bit πNVME_CTRL_KPIOC_KPIOS_MASKβ the mask you use to get the Key Per I/O Supported value out of thestruct nvme_id_ctrl.kpiocfield. and-mask it and slay β¨NVME_CTRL_KPIOC_KPIOSC_MASKβ the mask you use to get the Key Per I/O Scope value out of thestruct nvme_id_ctrl.kpiocfield. mask on, find out π
ngl the pattern is the whole point:_SHIFTtells you how far to shove the bits over,_MASKtells you which bits to keep. do both and you've got your value, no cap π«Ά
that's the whole vibe, bestie β this was the libnvme(2) page for enum nvme_id_ctrl_kpioc, straight out of the API Manual, dated July 2026 πΈβ¨ go read your controller identify data and be iconic π
π¦ 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