ENUM IOMMU_VEVENTQ_TYPE(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ enum iommu_veventq_type(9) ✨

okay so bestie, this is a page straight out of the Kernel API Manual, section 9, and it's literally just a little enum that tells the kernel which flavor of virtual event queue you're talking about πŸŽ€ it's giving "small but mighty", honestly.


πŸ’– NAME πŸ’–

enum iommu_veventq_type β€” Virtual Event Queue Type 🌸

Like yeah it's giving "just a type", but it's the type that tells everyone whose event queue we're vibing with πŸ’…


πŸ¦‹ SYNOPSIS πŸ¦‹

enum iommu_veventq_type {
    IOMMU_VEVENTQ_TYPE_DEFAULT ,
    IOMMU_VEVENTQ_TYPE_ARM_SMMUV3 ,
    IOMMU_VEVENTQ_TYPE_TEGRA241_CMDQV

};

three constants, no cap. that's the whole squad πŸ’œ


πŸ‘‘ Constants πŸ‘‘

okay here's the lineup, one by one, no skipping, we don't do that here:

  • IOMMU_VEVENTQ_TYPE_DEFAULT β€” Reserved for future use 🫢 like it's literally just sitting there holding a seat for someone who hasn't shown up yet. iconic placeholder behavior.
  • IOMMU_VEVENTQ_TYPE_ARM_SMMUV3 β€” ARM SMMUv3 Virtual Event Queue ⭐ that's your ARM SMMUv3 vibes.
  • IOMMU_VEVENTQ_TYPE_TEGRA241_CMDQV β€” NVIDIA Tegra241 CMDQV Extension IRQ πŸ”₯ yes, Tegra241, yes CMDQV, yes the extension IRQ.

that's it. three. all accounted for. periodt πŸ’…


🌈 SEE ALSO 🌈

bestie, buckle up, because this list is long and I am not skipping a single one of these β€” they're all in the kernel file ./include/uapi/linux/iommufd.h if you ever need to go touch grass and read them in person 🌱

  • 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)
  • struct iommu_hwpt_amd_guest(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)
  • 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)

ngl bestie, you don't have to read all of those right now. but they're there. iykyk πŸ’€

and that's the whole page!! sign-off time: this lil masterpiece lives in ./include/uapi/linux, dated October 2026 πŸŽ€ go forth and queue your virtual events, queen πŸ‘‘πŸ’–

πŸ“¦ where this page comes from