On Wed, Jun 17, 2020 at 12:39 PM Luck, Tony <[email protected]> wrote: > > > Is PASID in the uapi at all? > > > $ grep pasid include/uapi/linux/iommu.h > * @pasid: Process Address Space ID > __u32 pasid; > * @pasid: Process Address Space ID > __u32 pasid; > * @pasid: Process Address Space ID > __u32 pasid; > * - If the PASID bit is set, the @pasid field is populated and the > invalidation > * @pasid: process address space ID > __u64 pasid; > * struct iommu_inv_pasid_info - PASID Selective Invalidation Structure > * - If the PASID bit is set, the @pasid field is populated and the > invalidation > * @pasid: process address space ID > struct iommu_inv_pasid_info { > __u64 pasid; > * @pasid_info: invalidation data when @granularity is %IOMMU_INV_GRANU_PASID > struct iommu_inv_pasid_info pasid_info; > * struct iommu_gpasid_bind_data_vtd - Intel VT-d specific data on device and > guest > struct iommu_gpasid_bind_data_vtd { > * struct iommu_gpasid_bind_data - Information about device and guest PASID > binding > * @hpasid: Process address space ID used for the guest mm in host IOMMU > * @gpasid: Process address space ID used for the guest mm in guest IOMMU > struct iommu_gpasid_bind_data { > __u64 hpasid; > __u64 gpasid; > struct iommu_gpasid_bind_data_vtd vtd;
Aha. I guess this is considerably older than I thought.

