msi_first_desc(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… msi_first_desc(9) β€” like, the Kernel API Manual era πŸŽ€

okay bestie, sit down, we're talking about msi_first_desc(9) today and honestly? she's a little lookup girlie with one very important rule. let's get into it ✨


🌸 NAME 🌸

msi_first_desc β€” grabbeth the first MSI descriptor of the default irqdomain. yes, THE default one. main character irqdomain energy πŸ’…


✨ SYNOPSIS ✨

struct msi_desc * msi_first_desc (struct device *dev , enum
msi_desc_filter filter );

πŸ¦‹ ARGUMENTS πŸ¦‹

  • dev β€” the Device you're operating on 🫢 like, whose descriptors are we digging through, bestie?
  • filter β€” the Descriptor state filter πŸŽ€ you get to be picky. iconic of you.

πŸ’– DESCRIPTION πŸ’–

okay so this is the part where you HAVE to listen, no cap:

Must be called with the MSI descriptor mutex held, i.e. msi_lock_descs must be invoked before the call. 😭

like, LITERALLY. you cannot just waltz in and call this thing cold. msi_lock_descs goes first, then you call. that's the vibe check and you WILL be failing it if you skip the lock. lock her up first, then go looking. periodt πŸ”₯


πŸ‘‘ RETURN πŸ‘‘

returns a Pointer to the first MSI descriptor matching the search criteria πŸ’«

and if nothing matches? NULL 🫠 none found, bestie. empty search. it's giving nothing in the group chat. 🌈


πŸ”₯ SEE ALSO πŸ”₯

the whole squad, fr fr β€” Kernel file ./include/linux/msi.h, plus:


and that's the whole page, bestie 🧚 this one lives over in ./include/linux and it's dated October 2026 β€” so yeah, mark your calendars, the Kernel API Manual said what it said πŸ’œπŸ’…

πŸ“¦ where this page comes from