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