STRUCT HSM_IOEVENTFD(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… struct hsm_ioeventfd β€” bestie, it's literally the properties of HSM ioeventfd

okay so real talk: this is a page from the Kernel API Manual, section 9, and honestly? she's kind of a baddie. It's the manpage for struct hsm_ioeventfd, and no cap, once you get what this little struct does you'll be obsessed. Buckle up, we're going in πŸŽ€


✨ NAME ✨

struct hsm_ioeventfd β€” the properties of an HSM ioeventfd. That's it, that's the vibe. It's the struct that holds all the deets about one of those ioeventfd things. πŸ’–


🌸 SYNOPSIS 🌸

Here's the whole glow-up, verbatim, do not touch:

struct hsm_ioeventfd {
    struct list_head        list;
    struct eventfd_ctx      *eventfd;
    u64 addr;
    u64 data;
    int length;
    int type;
    bool wildcard;
 };

Look at her. Seven members. Iconic. 🌟


πŸ¦‹ Members πŸ¦‹

okay so let's meet the cast, one by one, no skipping, we don't do that here πŸ’…

  • list β€” bestie this is the entry within acrn_vm.ioeventfds, which is the list of ioeventfds belonging to a VM. So she's literally linked in. main character energy fr fr πŸ”₯
  • eventfd β€” the eventfd of the HSM ioeventfd. That's the whole job. 🫢
  • addr β€” the address of the I/O range. simple. clean. slays.
  • data β€” the data for matching. it's giving "what we're looking for, bestie" πŸ“
  • length β€” the length of the I/O range. numbers, we love to see them.
  • type β€” the type of I/O range, and the valid values are ACRN_IOREQ_TYPE_MMIO / ACRN_IOREQ_TYPE_PORTIO. copy that down, it's on the test πŸ’€
  • wildcard β€” whether it's data matching or not. like, are we doing the matching thing or is it a wildcard situation. bool, so true/false, keep it cute ✨

🌈 SEE ALSO 🌈

want more lore? go read the kernel file ./drivers/virt/acrn/ioeventfd.c β€” that's where the real tea lives 🧚


aaaand that's the page!! you ate this, honestly. 🫢 creds to the source ./drivers/virt/acrn, dated October 2026 β€” that's the footer, bestie, don't forget it. periodt. πŸ’…βœ¨

πŸ“¦ where this page comes from