[PATCH v5 0/7] Remove VT-d virtual command interface and IOASID
From: Jacob Pan
Date: Thu Mar 09 2023 - 17:18:19 EST
Hi all,
This patch set removes unused VT-d virtual command interface followed by
removal of the IOASID infrastructure.
This has only been tested on x86 platforms, need help with testing on ARM
SMMU and other architectures.
Thanks,
Jacob
ChangeLog:
v5:
- rebased on v6.3-rc1
- put removing iommu_sva_find() in a separate patch (Kevin)
- move definition of helpers to iommu code to be consistent with
declarations. (Kevin)
- misc fixes
v4:
- keep mm_pasid helpers inline as much as we can for fork performance
- separate GFP_ATOMIC to GFP_KERNEL change for bisectability
v3:
- moved helper functions for PASID under SVA code, avoided circular inclusion
between mm.h and iommu.h
- deleted makefiles
- put rename under a different patch
Jacob Pan (5):
iommu/vt-d: Remove virtual command interface
iommu/sva: Move PASID helpers to sva code
iommu/sva: Remove PASID to mm lookup function
iommu/sva: Use GFP_KERNEL for pasid allocation
iommu/ioasid: Rename INVALID_IOASID
Jason Gunthorpe (2):
iommu/sva: Stop using ioasid_set for SVA
iommu: Remove ioasid infrastructure
Documentation/x86/sva.rst | 2 +-
arch/x86/kernel/traps.c | 5 +-
drivers/dma/idxd/device.c | 8 +-
drivers/dma/idxd/idxd.h | 2 +-
drivers/dma/idxd/init.c | 2 +-
drivers/dma/idxd/irq.c | 2 +-
drivers/iommu/Kconfig | 5 -
drivers/iommu/Makefile | 1 -
drivers/iommu/intel/cap_audit.c | 2 -
drivers/iommu/intel/dmar.c | 6 +-
drivers/iommu/intel/iommu.c | 87 +------
drivers/iommu/intel/iommu.h | 3 -
drivers/iommu/intel/svm.c | 3 +-
drivers/iommu/ioasid.c | 422 --------------------------------
drivers/iommu/iommu-sva.c | 62 ++---
drivers/iommu/iommu-sva.h | 4 -
include/linux/ioasid.h | 83 -------
include/linux/iommu-helper.h | 12 +
include/linux/iommu.h | 8 +-
include/linux/sched/mm.h | 27 +-
mm/init-mm.c | 4 +-
21 files changed, 54 insertions(+), 696 deletions(-)
delete mode 100644 drivers/iommu/ioasid.c
delete mode 100644 include/linux/ioasid.h
--
2.25.1