[PATCH v5 0/5] iommu/s390: support additional table regions

From: Matthew Rosato
Date: Fri Apr 11 2025 - 16:25:16 EST


The series extends the maximum table size allowed by s390-iommu by
increasing the number of table regions supported. It also adds logic to
construct the table use the minimum number of regions based upon aperture
calculation.

Changes for v5:
- fix GFP_KERNEL under spinlock in patch 5

Changes for v4:
- rebase onto master/merge window
- convert patches 3 per Niklas to remove gotos
- convert patch 4 to also remove gotos
- add review tags

Changes for v3:
- rebase onto iommu-next
- move IOTA region type setting into s390-iommu
- remove origin_type and max_table_size from zdev
- adjust reserved region calculation to be dependent on the domain

Changes for v2:
- rebase onto 6.13
- remove 'iommu/s390: add basic routines for region 1st and 2nd tables'
and put routines in first patch that uses each. No functional change.

Matthew Rosato (5):
iommu/s390: set appropriate IOTA region type
iommu/s390: support cleanup of additional table regions
iommu/s390: support iova_to_phys for additional table regions
iommu/s390: support map/unmap for additional table regions
iommu/s390: allow larger region tables

arch/s390/include/asm/pci_dma.h | 3 +
drivers/iommu/s390-iommu.c | 345 ++++++++++++++++++++++++++++----
2 files changed, 314 insertions(+), 34 deletions(-)

--
2.49.0