[PATCH 0/6] iommufd: Add iommu capability reporting

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



iommufd gives userspace the capabilty to manipulating iommu subsytem.
e.g. DMA map/unmap etc. In the near future, it will also support iommu
nested translation. Different platform vendors have different implementation
for the nested translation. So before set up nested translation, userspace
needs to know the hardware iommu capabilities. For example, Intel platform
supports guest I/O page table to be the first stage translation structure.

This series reports the iommu capability for a given iommufd_device which
has been bound to iommufd. It is a preparation work for nested translation
support[1]. In this series, Intel VT-d capability reporting is added. Other
vendors may add their own reporting based on this series.

[1] https://github.com/yiliu1765/iommufd/tree/iommufd_nesting_vtd_v1

Regards,
	Yi Liu

Lu Baolu (2):
  iommu: Add new iommu op to get iommu hardware information
  iommu/vt-d: Implement hw_info for iommu capability query

Nicolin Chen (2):
  iommufd/selftest: Set iommu_device for mock_device
  iommufd/selftest: Add coverage for IOMMU_DEVICE_GET_INFO ioctl

Yi Liu (2):
  iommufd: Add IOMMU_DEVICE_GET_INFO
  iommufd/device: Add mock_device support in iommufd_device_get_info()

 drivers/iommu/intel/iommu.c                   | 19 ++++
 drivers/iommu/intel/iommu.h                   |  1 +
 drivers/iommu/iommufd/device.c                | 91 +++++++++++++++++++
 drivers/iommu/iommufd/iommufd_private.h       |  2 +
 drivers/iommu/iommufd/iommufd_test.h          | 15 +++
 drivers/iommu/iommufd/main.c                  |  3 +
 drivers/iommu/iommufd/selftest.c              | 26 ++++++
 include/linux/iommu.h                         |  8 ++
 include/uapi/linux/iommufd.h                  | 63 +++++++++++++
 tools/testing/selftests/iommu/iommufd.c       | 18 +++-
 tools/testing/selftests/iommu/iommufd_utils.h | 26 ++++++
 11 files changed, 271 insertions(+), 1 deletion(-)

-- 
2.34.1




[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux