libnvme(9)
π libnvme(9) β API Manual, but make it make sense
okay bestie, welcome to the libnvme API manual, page 9, and today's main character is a little enum that's way more important than it looks. it lives in section 9 of the manual, and it's about Key Per I/O Capabilities β yes, that's the NAME, and yes, it ate. π
β¨ NAME β¨
enum nvme_id_ctrl_kpioc β Key Per I/O Capabilities
like, it's an enum. it holds the capabilities. for keys. per I/O. the name really said "no notes" and left it at that. π
πΈ SYNOPSIS πΈ
here's the whole vibe, verbatim, don't touch the formatting or she'll get mad:
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
};
four constants. that's the whole enum. small but mighty fr fr πͺ
π¦ Constants π¦
okay so these are the four icons of the group chat, and every single one of them wants to help you pull something out of the struct nvme_id_ctrl.kpioc field. that field is the source of truth, and these constants are the little crowbars. π§
NVME_CTRL_KPIOC_KPIOS_SHIFTβ the shift amount you use to get the Key Per I/O Supported value out of thestruct nvme_id_ctrl.kpiocfield. shift it, slay it, done. β¨NVME_CTRL_KPIOC_KPIOSC_SHIFTβ the shift amount you use to get the Key Per I/O Scope out of thestruct nvme_id_ctrl.kpiocfield. it's the scope one, not the supported one β do not mix them up, i'm begging π«Ά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. mask on, extract, serve. πNVME_CTRL_KPIOC_KPIOSC_MASKβ the mask you use to get the Key Per I/O Scope out of thestruct nvme_id_ctrl.kpiocfield. that's the scope mask, bestie. the scope one. π
quick little recap because i love you:KPIOS= Key Per I/O Supported,KPIOSC= Key Per I/O Scope,SHIFT= shift amount,MASK= mask, and all four are read out of thestruct nvme_id_ctrl.kpiocfield. that's it, that's the whole lore. no cap. π₯
π and that's the tea
that's genuinely the whole page β four constants, one struct field, zero drama. ngl this is one of those quiet little enums that's just out here doing its job with main character energy and no credit. π
anyway, mwah, this page came from libnvme, API Manual, section 9, dated October 2026, and its official manpage name is enum nvme_id_ctrl_kpioc β so if you ever need to cite her, that's what you call her. π bye bestie, go shift some bits ππ
π¦ 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