[PATCH v4 0/6] Remove VT-d virtual command interface and IOASID

From: Jacob Pan
Date: Wed Mar 01 2023 - 18:53:52 EST


MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

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:
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 (4):
iommu/vt-d: Remove virtual command interface
iommu/sva: Move PASID helpers to sva code
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 | 9 -
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 | 1 +
include/linux/iommu.h | 8 +-
include/linux/sched/mm.h | 20 +-
mm/init-mm.c | 4 +-
21 files changed, 46 insertions(+), 692 deletions(-)
delete mode 100644 drivers/iommu/ioasid.c
delete mode 100644 include/linux/ioasid.h

--
2.25.1