libnvme(9)

πŸ“¦ version 3.2, in arch rolling

πŸ’… libnvme(9) β€” the API manual, bestie edition πŸ’…

okay so this is a page from the libnvme API manual (yes, that libnvme, the NVMe one 😌) and honestly? it's a short one. we're just talking about one lil enum that helps you dig into the power loss signaling info. tiny page, big "i know what i'm doing" energy. let's get into it ✨


πŸŽ€ NAME πŸŽ€

enum nvme_id_ctrl_crcap β€” Power Loss Signaling Information

fr fr that's the whole name. she's a little enum and she's here to help you read the crcap field. iconic behavior honestly πŸ’–


🌸 SYNOPSIS 🌸

enum nvme_id_ctrl_crcap {
    NVME_CTRL_CRCAP_RRSUP_SHIFT ,
    NVME_CTRL_CRCAP_RGIDC_SHIFT ,
    NVME_CTRL_CRCAP_RRSUP_MASK ,
    NVME_CTRL_CRCAP_RGIDC_MASK

};

look at her. four constants, no drama, absolutely slaying the "i'm a bitfield helper" aesthetic 🫢


πŸ¦‹ Constants πŸ¦‹

okay so every single one of these is about pulling something out of the struct nvme_id_ctrl.crcap field β€” that's the vibe, that's the assignment. two of them get you a shift amount, two of them get you a mask. classic bitfield situation, no cap πŸ’œ

  • NVME_CTRL_CRCAP_RRSUP_SHIFT β€” the shift amount you use to get the Reachability Reporting Supported out of the struct nvme_id_ctrl.crcap field. shift it, then look at it, periodt ✨
  • NVME_CTRL_CRCAP_RGIDC_SHIFT β€” the shift amount you use to get the Reachability Group ID Changeable out of the struct nvme_id_ctrl.crcap field. same deal, different bit πŸŽ€
  • NVME_CTRL_CRCAP_RRSUP_MASK β€” the mask that gets you the Reachability Reporting Supported from the struct nvme_id_ctrl.crcap field. mask on, bestie 🌈
  • NVME_CTRL_CRCAP_RGIDC_MASK β€” the mask that gets you the Reachability Group ID Changeable from the struct nvme_id_ctrl.crcap field. yes ma'am, that's the one πŸ’…
lowkey the pattern here is: one shift + one mask per thing, and the "thing" is always living inside struct nvme_id_ctrl.crcap. that's it, that's the whole page 🧚

and that's the page!! originally brought to you by libnvme(9) / enum nvme_id_ctrl_crcap, dated October 2026 β€” mwah, thanks for reading, go read your controller's crcap field responsibly πŸ’–βœ¨πŸŽ€

πŸ“¦ where this page comes from