On Fri, Aug 18, 2023 at 03:10:28AM -0700, Yi Liu wrote: > iommufd gives userspace the capability to manipulate iommu subsytem. > e.g. DMA map/unmap etc. In the near future, it will support iommu nested > translation. Different platform vendors have different implementations for > the nested translation. For example, Intel VT-d supports using guest I/O > page table as the stage-1 translation table. This requires guest I/O page > table be compatible with hardware IOMMU. So before set up nested translation, > userspace needs to know the hardware iommu information to understand the > nested translation requirements. > > This series reports the iommu hardware information for a given device > which has been bound to iommufd. It is preparation work for userspace to > allocate hwpt for given device. Like the nested translation support [1]. > > This series introduces an iommu op to report the iommu hardware info, > and an ioctl IOMMU_GET_HW_INFO is added to report such hardware info to > user. enum iommu_hw_info_type is defined to differentiate the iommu hardware > info reported to user hence user can decode them. This series adds the > framework for iommu hw info reporting, and adds the vtd implementation. The > complete code is available in [2]. > > [1] https://lore.kernel.org/linux-iommu/20230724110406.107212-1-yi.l.liu@xxxxxxxxx/ > [2] https://github.com/yiliu1765/iommufd/tree/iommufd_hw_info-v9 > Lu Baolu (1): > iommu: Add new iommu op to get iommu hardware information > > Nicolin Chen (1): > iommufd/selftest: Add coverage for IOMMU_GET_HW_INFO ioctl > > Yi Liu (3): > iommu: Move dev_iommu_ops() to private header > iommufd: Add IOMMU_GET_HW_INFO > iommu/vt-d: Implement hw_info for iommu capability query I picked this one up to iommufd for-next, thanks Jason