libnvme(2)

πŸ’– libnvme(2) β€” API Manual πŸ’–

okay bestie, welcome to the libnvme API manual, section 2 🫢 this one's a lil struct spotlight and it's giving persistent event energy, no cap.


✨ NAME ✨

struct nvme_persistent_event_entry β€” Persistent Event 🌸

like. that's the whole thing. that's the struct. she's an event and she's persistent, periodt πŸ’…


✨ SYNOPSIS ✨

struct nvme_persistent_event_entry {
    __u8 etype;
    __u8 etype_rev;
    __u8 ehl;
    __u8 ehai;
    __le16 cntlid;
    __le64 ets;
    __le16 pelpid;
    __u8 rsvd16[4];
    __le16 vsil;
    __le16 el;
};

look at her. ten whole fields. every single one of them accounted for, none skipped, we do NOT cut corners in this house 😀✨


✨ Members ✨

okay so field-by-field, and imma be so real with you, each one is exactly what it sounds like πŸŽ€

  • etype β€” Event Type. the whole personality of the event tbh, it tells you what kind of event this is πŸ‘‘
  • etype_rev β€” Event Type Revision. the version of the event type, because even event types get revised and honestly good for them πŸ’…
  • ehl β€” Event Header Length. how long the header is. she comes with measurements, iconic behaviour 🌸
  • ehai β€” Event Header Additional Info. extra info living up in the header. she's got ✨layers✨
  • cntlid β€” Controller Identifier. which controller this belongs to, iykyk πŸ”₯
  • ets β€” Event Timestamp. when it happened. time-stamped, documented, main character behaviour fr fr ⭐
  • pelpid β€” Port Identifier. which port she's repping, we love a port with identity
  • rsvd16 β€” Reserved. do NOT touch her. she's reserved. she's staying right there in her little rsvd16[4] lane and we respect that 🫢 (hands off bestie, reserved means reserved)
  • vsil β€” Vendor Specific Information Length. how much vendor-specific info is riding along for the trip πŸ¦‹
  • el β€” Event Length. how long the event is, full stop, the end, the final word 😌

lowkey a whole little event record in a trench coat. highkey every field matters, so don't go skipping any of them when you're parsing πŸ‘€

and that's the vibe check, bestie πŸ’– this was libnvme(2), page footer said struct nvme_persistent_event_entry, dated July 2026 🌈 go forth and handle your persistent events responsibly, ily, bye πŸŽ€βœ¨πŸ¦‹

πŸ“¦ where this page comes from