ENUM IOMMU_HWPT_DATA_TYPE(9)
π enum iommu_hwpt_data_type(9) β IOMMU HWPT Data Type
okay bestie, welcome to the Kernel API Manual β¨ this one's a tiny lil enum page but she's important, so let's get into it π«Ά
πΈ NAME πΈ
enum iommu_hwpt_data_type β the IOMMU HWPT Data Type, aka "which flavor of page table data are we handing over" π
β¨ SYNOPSIS β¨
enum iommu_hwpt_data_type {
IOMMU_HWPT_DATA_NONE ,
IOMMU_HWPT_DATA_VTD_S1 ,
IOMMU_HWPT_DATA_ARM_SMMUV3 ,
IOMMU_HWPT_DATA_AMD_GUEST
};
π¦ CONSTANTS π¦
so every single one of these is a vibe check on what kind of data the hardware page table (HWPT) is carrying. no skips, here's the whole roster π
IOMMU_HWPT_DATA_NONEβ literally no data. nothing. empty. it's giving "I have nothing to declare" πIOMMU_HWPT_DATA_VTD_S1β Intel VT-d stage-1 page table, bestie π₯IOMMU_HWPT_DATA_ARM_SMMUV3β ARM SMMUv3 Context Descriptor Table, iconic ARM behavior πIOMMU_HWPT_DATA_AMD_GUESTβ AMD IOMMU guest page table, AMD girlies rise π
π SEE ALSO π
buckle up because this list is long and she ate, no cap. first the source file, then the whole iommufd extended family π
- Kernel file
./include/uapi/linux/iommufd.h - General
ioctlformat(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)struct iommu_hwpt_amd_guest(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)
lowkey that's the whole page π«Ά four constants, one source file, and a see-also section that could fill a group chat. go read the neighbors, iykyk π
β¨ and that's the tea, bestie β¨ brought to you from ./include/uapi/linux, dated October 2026, straight out of the enum iommu_hwpt_data_type(9) page itself. slay responsibly π
π
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms