STRUCT HV_MSI_DESC(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… struct hv_msi_desc(9) πŸ’…

okay bestie, welcome to the Kernel API Manual ✨ and specifically to struct hv_msi_desc(9) β€” yes that's the page name, yes we're doing this, and yes you're gonna get it. sit down, hydrate, let's go 🫢


✨ NAME ✨

struct hv_msi_desc β€” and honestly? that's it. the manpage gives us nothing else here. a whole dash. the void. main character energy with no backstory πŸ’€ (we love a mystery though, so keep reading, the SYNOPSIS has the tea β˜•)


🌸 SYNOPSIS 🌸

here's the whole struct, character for character, no cap:

struct hv_msi_desc {
    u8 vector;
    u8 delivery_mode;
    u16 vector_count;
    u32 reserved;
    u64 cpu_mask;
 };

like… look at her. so compact. so iconic. let's meet the members πŸŽ€


πŸ¦‹ Members πŸ¦‹

  • vector β€” the IDT entry. that's the whole description. no notes πŸ’…
  • delivery_mode β€” as defined in Intel's Programmer's Reference Manual, Volume 3, Chapter 8. yeah, that's the homework. go read chapter 8, i'll wait 🧚
  • vector_count β€” the number of contiguous entries in the Interrupt Descriptor Table that this Message-Signaled Interrupt is occupying. and for "MSI", as first defined in PCI 2.2, this can be between 1 and…
  • 32 β€” okay so ngl, the manpage formatting literally split this off into its own entry and i'm not gonna lie to you about it πŸ™ˆ this is the rest of the line above: 32. so, 1 and 32. and then β€” For "MSI-X," as first defined in PCI 3.0, this must be 1, because each MSI-X table entry would have its own descriptor. periodt, no exceptions πŸ”₯
  • reserved β€” empty space. she's just vibing. padding queen πŸ‘‘
  • cpu_mask β€” all the target virtual processors. every single one. the whole group chat 🫢

πŸ’œ SEE ALSO πŸ’œ

first up, the location tea: Kernel file ./drivers/pci/controller/pci-hyperv.c struct β€” that's where she lives 🏠

and now the full squad, because bestie has a lot of friends and we are NOT leaving anyone out:


lowkey the whole drivers/pci/controller directory is a friend group and this struct is the one who brings the snacks πŸ“

and that's the page!! πŸ’– sign-off time: this lives over in ./drivers/pci/controller, dated October 2026, and it's filed under struct hv_msi_desc(9). slay, you read the whole thing, i'm so proud of you πŸŽ€βœ¨πŸ‘‘

πŸ“¦ where this page comes from