[GIT PULL] IOMMU fixes for -rc3

From: Will Deacon
Date: Fri Jan 08 2021 - 09:40:38 EST


Hi Linus,

Please pull these IOMMU fixes for -rc3. It's mainly all Intel VT-D stuff,
but there are some fixes for AMD and ARM as well. We've also got the
revert I promised during the merge window, which removes a temporary
hack to accomodate i915 while we transitioned the Intel IOMMU driver
over to the common DMA-IOMMU API.

Finally, there are still a couple of other VT-D fixes floating around, so I
expect to send you another batch of fixes next week.

Cheers,

Will

--->8

The following changes since commit 5c8fe583cce542aa0b84adc939ce85293de36e5e:

Linux 5.11-rc1 (2020-12-27 15:30:22 -0800)

are available in the Git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git tags/iommu-fixes

for you to fetch changes up to 7c29ada5e70083805bc3a68daa23441df421fbee:

iommu/vt-d: Fix ineffective devTLB invalidation for subdevices (2021-01-07 14:38:15 +0000)

----------------------------------------------------------------
iommu fixes for -rc3

- Fix VT-D TLB invalidation for subdevices

- Fix VT-D use-after-free on subdevice detach

- Fix VT-D locking so that IRQs are disabled during SVA bind/unbind

- Fix VT-D address alignment when flushing IOTLB

- Fix memory leak in VT-D IRQ remapping failure path

- Revert temporary i915 sglist hack now that it is no longer required

- Fix sporadic boot failure with Arm SMMU on Qualcomm SM8150

- Fix NULL dereference in AMD IRQ remapping code with remapping disabled

- Fix accidental enabling of irqs on AMD resume-from-suspend path

- Fix some typos in comments

----------------------------------------------------------------
Bjorn Andersson (1):
iommu/arm-smmu-qcom: Initialize SCTLR of the bypass context

David Woodhouse (2):
iommu/amd: Set iommu->int_enabled consistently when interrupts are set up
iommu/amd: Stop irq_remapping_select() matching when remapping is disabled

Dinghao Liu (1):
iommu/intel: Fix memleak in intel_irq_remapping_alloc

Liu Yi L (3):
iommu/vt-d: Move intel_iommu info from struct intel_svm to struct intel_svm_dev
iommu/vt-d: Fix general protection fault in aux_detach_device()
iommu/vt-d: Fix ineffective devTLB invalidation for subdevices

Lu Baolu (3):
iommu/vt-d: Fix misuse of ALIGN in qi_flush_piotlb()
Revert "iommu: Add quirk for Intel graphic devices in map_sg"
iommu/vt-d: Fix lockdep splat in sva bind()/unbind()

Stefano Garzarella (1):
iommu/iova: fix 'domain' typos

drivers/iommu/amd/init.c | 3 +-
drivers/iommu/amd/iommu.c | 3 +
drivers/iommu/arm/arm-smmu/arm-smmu-qcom.c | 2 +
drivers/iommu/dma-iommu.c | 27 ------
drivers/iommu/intel/dmar.c | 4 +-
drivers/iommu/intel/iommu.c | 148 +++++++++++++++++++++--------
drivers/iommu/intel/irq_remapping.c | 2 +
drivers/iommu/intel/svm.c | 23 +++--
drivers/iommu/iova.c | 8 +-
include/linux/intel-iommu.h | 18 ++--
10 files changed, 147 insertions(+), 91 deletions(-)