libnvme(9)

πŸ“¦ version 3.2, in arch rolling

πŸ’– NAME πŸ’–

okay bestie, welcome to libnvme(9) β€” the manual page (API Manual, no less πŸ‘‘) that's about one specific enum, and honestly? she's lowkey iconic for a struct field helper.

enum nvme_id_ctrl_plsi β€” Power Loss Signaling Information ✨


🌸 SYNOPSIS 🌸

so here's the whole thing, exactly as written, no cap:

enum nvme_id_ctrl_plsi {
    NVME_CTRL_PLSI_PLSEPF_SHIFT ,
    NVME_CTRL_PLSI_PLSFQ_SHIFT ,
    NVME_CTRL_PLSI_PLSEPF_MASK ,
    NVME_CTRL_PLSI_PLSFQ_MASK

};

that's it. that's the enum. four constants, zero drama (until the power fails, see below 😭).


πŸ¦‹ Constants πŸ¦‹

these four little icons are your cheat codes for pulling info out of the struct nvme_id_ctrl.plsi field. shift and mask, mask and shift, the classic duo πŸ’…

  • NVME_CTRL_PLSI_PLSEPF_SHIFT β€” this is the shift amount you use to get the PLS Emergency Power Fail out of the struct nvme_id_ctrl.plsi field. slide those bits over, bestie 🫢
  • NVME_CTRL_PLSI_PLSFQ_SHIFT β€” this one is the shift amount for getting the PLS Forced Quiescence out of the struct nvme_id_ctrl.plsi field. different shift, different vibe ✨
  • NVME_CTRL_PLSI_PLSEPF_MASK β€” the mask that gets you the PLS Emergency Power Fail from the struct nvme_id_ctrl.plsi field. it's giving filter, but make it bitwise πŸŽ€
  • NVME_CTRL_PLSI_PLSFQ_MASK β€” and this is the mask for grabbing the PLS Forced Quiescence out of that same struct nvme_id_ctrl.plsi field. same field, same energy, different bit mask πŸ’œ
ngl the whole trick here is: the field is <hotpink>plsi</hotpink>, and these constants are the only blessed way to peek inside it. don't go inventing your own shifts fr fr πŸ™ˆ

k that's the whole page, mwah πŸ’‹ β€” this was enum nvme_id_ctrl_plsi from the libnvme(9) API Manual, dated October 2026. go forth and mask responsibly, bestie πŸŒˆπŸ¦‹β­

πŸ“¦ where this page comes from