IOMMU Fixes for Linux v5.18-rc5

Including:

	- Fix for a regression in IOMMU core code which could cause NULL-ptr
	  dereferences

	- Arm SMMU fixes for 5.18
	  - Fix off-by-one in SMMUv3 SVA TLB invalidation
	  - Disable large mappings to workaround nvidia erratum

	- Intel VT-d fixes
	  - Handle PCI stop marker messages in IOMMU driver to meet the
	    requirement of I/O page fault handling framework.
	  - Calculate a feasible mask for non-aligned page-selective IOTLB
	    invalidation.

	- Two fixes for Apple DART IOMMU driver
	  - Fix potential NULL-ptr dereference
	  - Set module owner
iommu: Make sysfs robust for non-API groups

Groups created by VFIO backends outside the core IOMMU API should never
be passed directly into the API itself, however they still expose their
standard sysfs attributes, so we can still stumble across them that way.
Take care to consider those cases before jumping into our normal
assumptions of a fully-initialised core API group.

Fixes: 3f6634d997db ("iommu: Use right way to retrieve iommu_ops")
Reported-by: Jan Stancek <jstancek@redhat.com>
Tested-by: Jan Stancek <jstancek@redhat.com>
Reviewed-by: Jason Gunthorpe <jgg@nvidia.com>
Signed-off-by: Robin Murphy <robin.murphy@arm.com>
Link: https://lore.kernel.org/r/86ada41986988511a8424e84746dfe9ba7f87573.1651667683.git.robin.murphy@arm.com
Signed-off-by: Joerg Roedel <jroedel@suse.de>
1 file changed