STRUCT DEV_MSI_INFO(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… struct dev_msi_info(9) β€” kernel API manual, but make it make sense

okay so bestie, today we're looking at struct dev_msi_info from the Linux kernel API manual, which is literally the device data related to MSI. yes that's the whole NAME section, she's short and she knows it πŸŽ€


✨ SYNOPSIS ✨

here's the whole shape of her, no notes, copy it exactly:

struct dev_msi_info {
  #ifdef CONFIG_GENERIC_MSI_IRQ;
    struct irq_domain       *domain;
    struct msi_device_data  *data;
  #endif;
 };

notice the #ifdef CONFIG_GENERIC_MSI_IRQ; gate β€” both members only exist when that config is on, and yes the semicolons after the #ifdef / #endif lines are really there, don't come for me, that's the source 🌸


πŸ¦‹ Members πŸ¦‹

  • domain β€” the MSI interrupt domain associated to the device. that's her whole job, she's the domain link-up πŸ’«
  • data β€” pointer to MSI device data. just a pointer, icon behavior honestly 🫢

πŸ‘‘ SEE ALSO πŸ‘‘

the full squad, the whole friend group, no one gets left out:

Kernel file ./include/linux/device.h: struct subsys_interface(9), struct device_attribute(9), struct dev_ext_attribute(9), DEVICE_ATTR(9), DEVICE_ATTR_RW(9), DEVICE_ATTR_ADMIN_RW(9), DEVICE_ATTR_RW_NAMED(9), DEVICE_ATTR_RO(9), DEVICE_ATTR_ADMIN_RO(9), DEVICE_ATTR_RO_NAMED(9), DEVICE_ATTR_WO(9), DEVICE_ATTR_WO_NAMED(9), DEVICE_ULONG_ATTR(9), DEVICE_INT_ATTR(9), DEVICE_BOOL_ATTR(9), DEVICE_STRING_ATTR_RO(9), enum device_link_state(9), enum dl_dev_state(9), enum device_removable(9), struct dev_links_info(9), enum device_physical_location_panel(9), enum device_physical_location_vertical_position(9), enum device_physical_location_horizontal_position(9), struct device_physical_location(9), enum struct_device_flags(9), struct device(9), struct device_link(9), device_set_driver_override(9), device_has_driver_override(9), device_match_driver_override(9), device_iommu_mapped(9), dev_name(9), dev_bus_name(9), device_find_child_by_name(9), device_find_any_child(9), device_lock_set_class(9), device_lock_reset_class(9)

like, that's the entire device.h extended universe and she's linking all of it, respect πŸ’œ


ngl there's no OPTIONS section, no exit statuses, no environment variables here β€” it's a struct, she's just vibing with two members πŸ’€

and that's the page!! this little beauty lives in ./include/linux, the manual is dated October 2026, and the header/footer both say struct dev_msi_info(9) β€” so like, yes, she's the main character of her own manpage πŸ’–βœ¨πŸ¦‹ iykyk 🌈

πŸ“¦ where this page comes from