STRUCT IOMMU_HWPT_AMD_GUEST(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– struct iommu_hwpt_amd_guest(9) πŸ’–

okay so bestie, this is a page straight out of the Kernel API Manual (section 9, the big-kid kernel section obvi) and it's all about one tiny little struct called iommu_hwpt_amd_guest πŸŽ€ β€” it's the AMD IOMMU guest I/O page table data, and its vibe check is tagged with IOMMU_HWPT_DATA_AMD_GUEST. iykyk πŸ’…


✨ NAME ✨

struct iommu_hwpt_amd_guest β€” the AMD IOMMU guest I/O page table data, a.k.a. the thing that answers to IOMMU_HWPT_DATA_AMD_GUEST πŸ¦‹

🌸 SYNOPSIS 🌸

like, here's the whole entire struct, no cap, not a single line more:

struct iommu_hwpt_amd_guest {
    __aligned_u64 dte[4];
 };

that's it. that's the icon. four whole __aligned_u64s in an array and she ate πŸ”₯

🫢 Members 🫢

  • dte β€” the Guest Device Table Entry (DTE) πŸ’œ literally the guest DTE, that's her whole job.

πŸ‘‘ SEE ALSO πŸ‘‘

okay this is the part where I list literally everyone in the group chat, and I mean everyone β€” not skipping a single mutual fr fr 😭

  • Kernel file ./include/uapi/linux/iommufd.h
  • General ioctl format(9)
  • struct iommu_destroy(9)
  • struct iommu_ioas_alloc(9)
  • struct iommu_iova_range(9)
  • struct iommu_ioas_iova_ranges(9)
  • struct iommu_ioas_allow_iovas(9)
  • enum iommufd_ioas_map_flags(9)
  • struct iommu_ioas_map(9)
  • struct iommu_ioas_noiommu_get_pa(9)
  • struct iommu_ioas_map_file(9)
  • struct iommu_ioas_copy(9)
  • struct iommu_ioas_unmap(9)
  • enum iommufd_option(9)
  • enum iommufd_option_ops(9)
  • struct iommu_option(9)
  • enum iommufd_vfio_ioas_op(9)
  • struct iommu_vfio_ioas(9)
  • enum iommufd_hwpt_alloc_flags(9)
  • enum iommu_hwpt_vtd_s1_flags(9)
  • struct iommu_hwpt_vtd_s1(9)
  • struct iommu_hwpt_arm_smmuv3(9)
  • enum iommu_hwpt_data_type(9)
  • struct iommu_hwpt_alloc(9)
  • enum iommu_hw_info_vtd_flags(9)
  • struct iommu_hw_info_vtd(9)
  • enum iommu_hw_info_arm_smmuv3_flags(9)
  • struct iommu_hw_info_arm_smmuv3(9)
  • struct iommu_hw_info_tegra241_cmdqv(9)
  • struct iommu_hw_info_amd(9)
  • enum iommu_hw_info_type(9)
  • enum iommufd_hw_capabilities(9)
  • enum iommufd_hw_info_flags(9)
  • struct iommu_hw_info(9)
  • struct iommu_hwpt_set_dirty_tracking(9)
  • enum iommufd_hwpt_get_dirty_bitmap_flags(9)
  • struct iommu_hwpt_get_dirty_bitmap(9)
  • enum iommu_hwpt_invalidate_data_type(9)
  • enum iommu_hwpt_vtd_s1_invalidate_flags(9)
  • struct iommu_hwpt_vtd_s1_invalidate(9)
  • struct iommu_viommu_arm_smmuv3_invalidate(9)
  • struct iommu_hwpt_invalidate(9)
  • enum iommu_hwpt_pgfault_flags(9)
  • enum iommu_hwpt_pgfault_perm(9)
  • struct iommu_hwpt_pgfault(9)
  • enum iommufd_page_response_code(9)
  • struct iommu_hwpt_page_response(9)
  • struct iommu_fault_alloc(9)
  • enum iommu_viommu_type(9)
  • struct iommu_viommu_tegra241_cmdqv(9)
  • struct iommu_viommu_alloc(9)
  • struct iommu_vdevice_alloc(9)
  • struct iommu_ioas_change_process(9)
  • enum iommu_veventq_flag(9)
  • struct iommufd_vevent_header(9)
  • enum iommu_veventq_type(9)
  • struct iommu_vevent_arm_smmuv3(9)
  • struct iommu_vevent_tegra241_cmdqv(9)
  • struct iommu_veventq_alloc(9)
  • enum iommu_hw_queue_type(9)
  • struct iommu_hw_queue_alloc(9)

bestie reminder: every single one of those is (9) β€” kernel API section, don't come for me if you're looking for them in section 3 πŸ™ˆ

and that's the whole page, we're done, no notes πŸ’€βœ¨ it lives under ./include/uapi/linux, dated October 2026, and yes she signs her work like a main character: struct iommu_hwpt_amd_guest(9) πŸ§šβ€β™€οΈ slay, bye πŸ’–

πŸ“¦ where this page comes from