RE: [PATCH v2 0/5] iommu: Enable user space IOPFs in non-PASID and non-svm cases

From: Tian, Kevin
Date: Fri Sep 13 2024 - 20:48:53 EST


> From: Joel Granados via B4 Relay
> <devnull+j.granados.samsung.com@xxxxxxxxxx>
>
> This series makes use of iommufd_hwpt_replace_device to execute
> non-pasid/non-svm user space IOPFs. Our main motivation is to enable
> user-space driver driven device verification without SVM/PASID.

can you elaborate why IOPFs are necessary to help verify such usage?

>
> What?
> * Enable IO page fault handling in user space for a non-pasid, non-svm
> and non-virtualised use case.
> * Move IOMMU_IOPF configuration from INTEL_IOMMU_SVM into
> INTEL_IOMMU.
> * Move all page request queue related logic to a new (prq.c) file.
> * Remove PASID checks from PRQ event handling as well as PRQ
> initialization.
> * Allow execution of IOMMU_HWPT_ALLOC with a valid fault id
> (IOMMU_HWPT_FAULT_ID_VALID)
> * Insert a zero handle into the PASID array in dev->iommu_group when
> replacing the old HWPT with an IOPF enabled HWPT.

the last bullet is stale now.

btw a selftest is expected too.