libnvme(9)

πŸ“¦ version 3.2, in arch rolling

πŸ’… libnvme(9) β€” literally the API Manual, bestie

Okay so picture this: you're deep in the libnvme API Manual (yes, that libnvme, section 9, iykyk) and you stumble into this little enum. It's not huge, it's not scary, it's just four constants doing their thing. Let's get into it 🫢


✨ NAME ✨

enum nvme_id_ctrl_ensa β€” Exported NVM Subsystem Attributes. That's it, that's the whole vibe. It's giving "small but essential" πŸ’–


🌸 SYNOPSIS 🌸

enum nvme_id_ctrl_ensa {
    NVME_CTRL_ENSA_ENSMS_SHIFT ,
    NVME_CTRL_ENSA_ENSTS_SHIFT ,
    NVME_CTRL_ENSA_ENSMS_MASK ,
    NVME_CTRL_ENSA_ENSTS_MASK

};

Four members, no cap. Two shifts, two masks, and they come in exactly that order β€” SHIFT, SHIFT, MASK, MASK. Copy it exactly like that, bestie, don't get creative πŸ™ˆ


πŸŽ€ Constants πŸŽ€

These are the four icons of this enum, and each one has one job. Lock in πŸ”₯

  • NVME_CTRL_ENSA_ENSMS_SHIFT β€” the shift amount you use to get the Exported NVM Subsystem Support Migration Support. She's the "how far do I slide over" girlie ✨
  • NVME_CTRL_ENSA_ENSTS_SHIFT β€” the shift amount for the Exported NVM Subsystem Template Support. Same energy, different field 🌸
  • NVME_CTRL_ENSA_ENSMS_MASK β€” the mask for the Exported NVM Subsystem Support Migration Support. Use this to isolate the bits once you've shifted πŸŽ€
  • NVME_CTRL_ENSA_ENSTS_MASK β€” the mask for the Exported NVM Subsystem Template Support. Mask bestie, doing mask things πŸ’…
ngl the pattern here is so clean: ENSMS pairs with Support Migration Support, ENSTS pairs with Template Support. Shift to move the bits, mask to keep them. Main character energy fr fr πŸ‘‘

That's the whole page, bestie β€” nothing hiding in the corners. Go forth and bit-twiddle responsibly πŸ¦‹


mwah πŸ’œ this was enum nvme_id_ctrl_ensa from the libnvme(9) API Manual, dated October 2026 β€” see you in the next one, slay βœ¨πŸŽ€

πŸ“¦ where this page comes from