Re: [PATCH v3 02/14] iommu: Report domain nesting info

From: Stefan Hajnoczi
Date: Mon Jun 29 2020 - 16:42:18 EST


On Wed, Jun 24, 2020 at 01:55:15AM -0700, Liu Yi L wrote:
> +/*
> + * struct iommu_nesting_info - Information for nesting-capable IOMMU.
> + * user space should check it before using
> + * nesting capability.
> + *
> + * @size: size of the whole structure
> + * @format: PASID table entry format, the same definition with
> + * @format of struct iommu_gpasid_bind_data.
> + * @features: supported nesting features.
> + * @flags: currently reserved for future extension.
> + * @data: vendor specific cap info.
> + *
> + * +---------------+----------------------------------------------------+
> + * | feature | Notes |
> + * +===============+====================================================+
> + * | SYSWIDE_PASID | Kernel manages PASID in system wide, PASIDs used |
> + * | | in the system should be allocated by host kernel |
> + * +---------------+----------------------------------------------------+
> + * | BIND_PGTBL | bind page tables to host PASID, the PASID could |
> + * | | either be a host PASID passed in bind request or |
> + * | | default PASIDs (e.g. default PASID of aux-domain) |
> + * +---------------+----------------------------------------------------+
> + * | CACHE_INVLD | mandatory feature for nesting capable IOMMU |
> + * +---------------+----------------------------------------------------+

This feature description is vague about what CACHE_INVLD does and how to
use it. If I understand correctly, the presence of this feature means
that VFIO_IOMMU_NESTING_OP_CACHE_INVLD must be used?

The same kind of clarification could be done for SYSWIDE_PASID and
BIND_PGTBL too.

Stefan

Attachment: signature.asc
Description: PGP signature