diff options
| author | Mark Brown <broonie@kernel.org> | 2026-09-14 16:08:17 +0100 |
|---|---|---|
| committer | Mark Brown <broonie@kernel.org> | 2026-09-14 16:08:17 +0100 |
| commit | ce1600c100075ad2790bd9a012b223438acd21bc (patch) | |
| tree | 2e6c9e8391a1c443a16914763fddb80820a570c5 /include | |
| parent | d1956bbc8e1fbebda11fc7a554338f3c80d7ed1a (diff) | |
| parent | fe85c40e992be9578b8cdfa992d9e23005e25e77 (diff) | |
| download | linux-next-ce1600c100075ad2790bd9a012b223438acd21bc.tar.gz linux-next-ce1600c100075ad2790bd9a012b223438acd21bc.zip | |
Merge branch 'for-next' of https://git.kernel.org/pub/scm/linux/kernel/git/jgg/iommufd.git
Diffstat (limited to 'include')
| -rw-r--r-- | include/linux/iommu.h | 6 | ||||
| -rw-r--r-- | include/linux/iommufd.h | 2 | ||||
| -rw-r--r-- | include/uapi/linux/iommufd.h | 4 |
3 files changed, 9 insertions, 3 deletions
diff --git a/include/linux/iommu.h b/include/linux/iommu.h index ac43b8b93f14..05f7cee1375e 100644 --- a/include/linux/iommu.h +++ b/include/linux/iommu.h @@ -773,8 +773,10 @@ struct iommu_ops { * passes in the cache invalidation requests, in form * of a driver data structure. The driver must update * array->entry_num to report the number of handled - * invalidation requests. The driver data structure - * must be defined in include/uapi/linux/iommufd.h + * invalidation requests. A driver may handle fewer than + * the requested, in which case the core re-invokes the + * op for the remainder. The driver data structure must + * be defined in include/uapi/linux/iommufd.h * @iova_to_phys: translate iova to physical address * @enforce_cache_coherency: Prevent any kind of DMA from bypassing IOMMU_CACHE, * including no-snoop TLPs on PCIe or other platform diff --git a/include/linux/iommufd.h b/include/linux/iommufd.h index 6e7efe83bc5d..3087f5b2def8 100644 --- a/include/linux/iommufd.h +++ b/include/linux/iommufd.h @@ -154,6 +154,8 @@ struct iommufd_hw_queue { * The @array passes in the cache invalidation requests, in * form of a driver data structure. A driver must update the * array->entry_num to report the number of handled requests. + * A driver may handle fewer than the requested entry_num, in + * which case the core re-invokes the op for the remainder. * The data structure of the array entry must be defined in * include/uapi/linux/iommufd.h * @vdevice_size: Size of the driver-defined vDEVICE structure per this vIOMMU diff --git a/include/uapi/linux/iommufd.h b/include/uapi/linux/iommufd.h index 206fa667c782..5d47d1421c1f 100644 --- a/include/uapi/linux/iommufd.h +++ b/include/uapi/linux/iommufd.h @@ -948,7 +948,9 @@ struct iommu_hwpt_vtd_s1_invalidate { * CMDQ_OP_CFGI_CD * CMDQ_OP_CFGI_CD_ALL * - * -EIO will be returned if the command is not supported. + * User space must forward only valid commands: the kernel rejects, with + * -EIO, any command carrying an unsupported opcode, an unsupported field, + * or a field value that the underlying SMMU hardware does not implement. */ struct iommu_viommu_arm_smmuv3_invalidate { __aligned_le64 cmd[2]; |
