iommu/s390: Tolerate repeat attach_dev calls
authorMatthew Rosato <mjrosato@linux.ibm.com>
Thu, 19 May 2022 18:29:29 +0000 (14:29 -0400)
committerJoerg Roedel <jroedel@suse.de>
Fri, 20 May 2022 07:57:09 +0000 (09:57 +0200)
commitfa7e9ecc5e1c1a1e8aa7014b2749b22edc801dd2
tree92bcb6f7f815e4cc3d75071f14f61a1b8b8e342c
parent0286300e60455534b23f4b86ce79247829ceddb8
iommu/s390: Tolerate repeat attach_dev calls

Since commit 0286300e6045 ("iommu: iommu_group_claim_dma_owner() must
always assign a domain") s390-iommu will get called to allocate multiple
unmanaged iommu domains for a vfio-pci device -- however the current
s390-iommu logic tolerates only one.  Recognize that multiple domains can
be allocated and handle switching between DMA or different iommu domain
tables during attach_dev.

Signed-off-by: Matthew Rosato <mjrosato@linux.ibm.com>
Reviewed-by: Jason Gunthorpe <jgg@nvidia.com>
Link: https://lore.kernel.org/r/20220519182929.581898-1-mjrosato@linux.ibm.com
Signed-off-by: Joerg Roedel <jroedel@suse.de>
drivers/iommu/s390-iommu.c