iommu: IOMMU and DMA-mapping API Updates for 9.4
Merge Request Required Information
Bugzilla: https://bugzilla.redhat.com/2223717
JIRA: https://issues.redhat.com/browse/RHEL-10007
JIRA: https://issues.redhat.com/browse/RHEL-10026
JIRA: https://issues.redhat.com/browse/RHEL-10042
JIRA: https://issues.redhat.com/browse/RHEL-10094
JIRA: https://issues.redhat.com/browse/RHEL-3655
JIRA: https://issues.redhat.com/browse/RHEL-800
Depends: !3244
Depends: !3245
Omitted-fix: c7bd8a1f45ba ("iommu/apple-dart: Handle DMA_FQ domains in attach_dev()")
- Apple Dart not supported
Upstream Status: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
Testing: A mix of fio jobs, and various stress-ng io stressors (--hdd, --readahead, --aio, --aiol, --seek,
--sync_file) run with strict and lazy translation modes on amd, intel, and arm systems. pgtbl_v2
tested on AMD Genoa host
Conflicts: Should be noted in individual commits. In particular one upstream merge in 6.4, 58390c8ce1bd, had a rather
messy merge conflict resolution set, so a number of commits have those cleanups added in here.
Summary of Changes
Rebase through v6.5 with a good portion of v6.6 as well (minus the
dynamic swiotlb mempool support, per numa dma cma support, and arm
+ mm tlb invalidate changes). For iommufd changes there are
backports of the underlying functionality in iommufd, but I have left
the vfio commits that will eventually make use of it for Alex.
Highlights
* AMD GA Log Overflow refactor and PPR Log support
* AMD v2 page table support
* AMD v2 5 level guest page table support
* Various cleanups and fixes
* Sync ipmmu-vmsa in preparation for Renesas support (config not enabled)
* Continuation of swiotlb rework
* Continuation of the refactor of core iommu code as part of SVA, iommufd, and pasid support work
* Continuation of the iommufd prep work (config still not enabled)
* Support for bounce buffer usage with non cache-line aligned kmallocs on arm64
* Clean up of in-kernel pasid use for vt-d
* More cleanup of BUG_ON and warning use in vt-d
This is based on top of MR !2843 and !3158.
Signed-off-by: Jerry Snitselaar jsnitsel@redhat.com
Approved Development Ticket
All submissions to CentOS Stream must reference an approved ticket in Red Hat Jira. Please follow the CentOS Stream contribution documentation for how to file this ticket and have it approved.
Edited by Jerry Snitselaar