Pull iommufd updates from Jason Gunthorpe: "No major functionality this cycle: - iommufd part of the domain_alloc_paging_flags() conversion - Move IOMMU_HWPT_FAULT_ID_VALID processing out of drivers - Increase a timeout waiting for other threads to drop transient refcounts that syzkaller was hitting - Fix a UBSAN hit in iova_bitmap due to shift out of bounds - Add missing cleanup of fault events during FD shutdown, fixing a memory leak - Improve the fault delivery flow to have a smaller locking critical region that does not include copy_to_user() - Fix 32 bit ABI breakage due to missed implicit padding, and fix the stack memory leakage" * tag 'for-linus-iommufd' of git://git.kernel.org/pub/scm/linux/kernel/git/jgg/iommufd: iommufd: Fix struct iommu_hwpt_pgfault init and padding iommufd/fault: Use a separate spinlock to protect fault->deliver list iommufd/fault: Destroy response and mutex in iommufd_fault_destroy() iommufd: Keep OBJ/IOCTL lists in an alphabetical order iommufd/iova_bitmap: Fix shift-out-of-bounds in iova_bitmap_offset_to_index() iommu: iommufd: fix WARNING in iommufd_device_unbind iommufd: Deal with IOMMU_HWPT_FAULT_ID_VALID in iommufd core iommufd/selftest: Remove domain_alloc_paging()
Showing the changes to include/uapi/linux (1 of 9 files). Show all
Unified · Split
| @@ -868,6 +868,7 @@ enum iommu_hwpt_pgfault_perm { · 867 unmodified lines | ||
| 868 | 868 | * @pasid: Process Address Space ID |
| 869 | 869 | * @grpid: Page Request Group Index |
| 870 | 870 | * @perm: Combination of enum iommu_hwpt_pgfault_perm |
| 871 | + * @__reserved: Must be 0. | |
| 871 | 872 | * @addr: Fault address |
| 872 | 873 | * @length: a hint of how much data the requestor is expecting to fetch. For |
| 873 | 874 | * example, if the PRI initiator knows it is going to do a 10MB |
| @@ -883,7 +884,8 @@ struct iommu_hwpt_pgfault { · 9 unmodified lines | ||
| 883 | 884 | __u32 pasid; |
| 884 | 885 | __u32 grpid; |
| 885 | 886 | __u32 perm; |
| 886 | − __u64 addr; | |
| 887 | + __u32 __reserved; | |
| 888 | + __aligned_u64 addr; | |
| 887 | 889 | __u32 length; |
| 888 | 890 | __u32 cookie; |
| 889 | 891 | }; |