libnvme(9)

πŸ“¦ version 3.2, in arch rolling

πŸ’… libnvme β€” struct libnvme_mi_event (the AE event info glow-up)

okay so this page is from the API Manual for libnvme, and it's literally just about one little struct bestie β€” no cap, it's the whole personality. It's struct libnvme_mi_event, aka the AE event information structure πŸ¦‹


✨ NAME ✨

struct libnvme_mi_event β€” the AE event information structure. that's it, that's the vibe πŸ’–


πŸŽ€ SYNOPSIS πŸŽ€

here's the whole thing, exactly as it lives, don't touch it:

struct libnvme_mi_event {
    uint8_t aeoi;
    uint8_t aessi;
    uint32_t aeocidi;
    void *spec_info;
    size_t spec_info_len;
    void *vend_spec_info;
    size_t vend_spec_info_len;
 };

it's giving "small struct, big main character energy" ✨


🌸 MEMBERS 🌸 (the whole cast, one by one)

  • aeoi β€” the Event identifier. this is who the event is πŸ‘‘
  • aessi β€” the Event occurrence scope info, i.e. the scope tea πŸ«–
  • aeocidi β€” the Event occurrence scope ID info. yes the naming is chaotic, no we don't make the rules πŸ’€
  • spec_info β€” the specific info buffer. the actual receipts πŸ“¦
  • spec_info_len β€” length of the specific info buffer. because a buffer without a length is just chaos πŸ’…
  • vend_spec_info β€” the vendor specific info buffer, for when your vendor wants to be ✨unique✨
  • vend_spec_info_len β€” length of the vendor specific info buffer. same rules, vendor edition πŸ”₯

πŸ’œ DESCRIPTION πŸ’œ

so here's the lowkey important part bestie: the application callbacks for libnvme_mi_aem_process will be able to call libnvme_mi_aem_get_next_event, and that will return a pointer to such an identifier for the next event the application should parse. iykyk πŸ‘€

like β€” callback fires, you call libnvme_mi_aem_get_next_event, you get a pointer to one of these bad boys, and then it's your app's turn to parse the next event. iconic behavior honestly 🌈


ngl, remember: this page describes the struct and that flow, nothing more. don't go inventing extra fields in your head β€” the struct literally lists seven members and we respect all seven πŸ™ˆ

and that's the whole page, bestie πŸ“ sign-off time: this was struct libnvme_mi_event from libnvme(9), the API Manual, dated October 2026 β€” periodt, slay, go parse some events πŸ’–πŸ§šβ€β™€οΈ

πŸ“¦ where this page comes from