libnvme(2)
π NAME π
okay so bestie, this is from the libnvme API manual, section 2 (iykyk) β and today's main character is enum nvme_id_ctrl_cmic. It's the Controller Multipath IO and Namespace Sharing Capabilities of the controller and NVM subsystem. yes that's a whole mouthful, we love a long title π
β¨ SYNOPSIS β¨
no cap, here's the whole thing, exactly as it is:
enum nvme_id_ctrl_cmic {
NVME_CTRL_CMIC_MULTI_PORT ,
NVME_CTRL_CMIC_MULTI_CTRL ,
NVME_CTRL_CMIC_MULTI_SRIOV ,
NVME_CTRL_CMIC_MULTI_ANA_REPORTING
};
four constants, four little vibe checks on what your NVM subsystem and controller can actually do π¦
πΈ Constants πΈ
π NVME_CTRL_CMIC_MULTI_PORT
If this one's set, then the NVM subsystem may contain more than one NVM subsystem port. If it's not set, then the NVM subsystem contains only a single NVM subsystem port. one port, no sharing energy, periodt.
π NVME_CTRL_CMIC_MULTI_CTRL
If this is set, the NVM subsystem may contain two or more controllers. If it's not set, then the NVM subsystem contains only a single controller. and here's the cute part β an NVM subsystem that contains multiple controllers may be used by multiple hosts, or it may provide multiple paths for a single host. it's giving "sharing is caring" fr fr π₯
π NVME_CTRL_CMIC_MULTI_SRIOV
If this one's set, the controller is associated with an SR-IOV Virtual Function. If it's not set, it's associated with a PCI Function or a Fabrics connection. literally two completely different origin stories bestie π
π NVME_CTRL_CMIC_MULTI_ANA_REPORTING
If this is set, then the NVM subsystem supports Asymmetric Namespace Access Reporting. that's it, that's the whole vibe, and it's iconic β¨
okay quick reminder bestie: if a bit isn't set, don't assume stuff about the other bits β each constant speaks for itself only π
mwah that's the whole page, you ate it π
and a lil sign-off for the girlies who read the footer: this page is enum nvme_id_ctrl_cmic from the libnvme(2) manual, dated July 2026 πΈπ¦ ty for coming to my ted talk, ily, go read the other pages π«Ά
π¦ 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