On Mon, Jul 01, 2019 at 11:30:30AM +0200, Eric Auger wrote: > We introduce a new IOMMU Memory Region attribute, > IOMMU_ATTR_VFIO_NESTED that tells whether the virtual IOMMU > requires physical nested stages for VFIO integration. > > Current Intel virtual IOMMU device supports "Caching > Mode" and does not require 2 stages at physical level to be > integrated with VFIO. However SMMUv3 does not implement such > "caching mode" and requires to use physical stage 1 for VFIO > integration. > > Signed-off-by: Eric Auger <eric.au...@redhat.com> > --- > include/exec/memory.h | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/include/exec/memory.h b/include/exec/memory.h > index bdd76653a8..dd7ef23f96 100644 > --- a/include/exec/memory.h > +++ b/include/exec/memory.h > @@ -204,7 +204,8 @@ struct MemoryRegionOps { > }; > > enum IOMMUMemoryRegionAttr { > - IOMMU_ATTR_SPAPR_TCE_FD > + IOMMU_ATTR_SPAPR_TCE_FD, > + IOMMU_ATTR_VFIO_NESTED,
IMHO it'll be better if this patch can be squashed into the first user of the new flag to better clarify itself on why it will be needed (if finally we still would like to have this flag). Regards, -- Peter Xu