Messages in this thread | | | Date | Wed, 3 Jul 2019 14:34:27 -0600 | From | Alex Williamson <> | Subject | Re: [PATCH v7 2/6] vfio/type1: Check reserve region conflict and update iova list |
| |
On Wed, 26 Jun 2019 16:12:44 +0100 Shameer Kolothum <shameerali.kolothum.thodi@huawei.com> wrote:
> This retrieves the reserved regions associated with dev group and > checks for conflicts with any existing dma mappings. Also update > the iova list excluding the reserved regions. > > Reserved regions with type IOMMU_RESV_DIRECT_RELAXABLE are > excluded from above checks as they are considered as directly > mapped regions which are known to be relaxable. > > Signed-off-by: Shameer Kolothum <shameerali.kolothum.thodi@huawei.com> > --- > drivers/vfio/vfio_iommu_type1.c | 96 +++++++++++++++++++++++++++++++++ > 1 file changed, 96 insertions(+) > > diff --git a/drivers/vfio/vfio_iommu_type1.c b/drivers/vfio/vfio_iommu_type1.c > index 970d1ec06aed..b6bfdfa16c33 100644 > --- a/drivers/vfio/vfio_iommu_type1.c > +++ b/drivers/vfio/vfio_iommu_type1.c > @@ -1559,6 +1641,7 @@ static int vfio_iommu_type1_attach_group(void *iommu_data, > phys_addr_t resv_msi_base; > struct iommu_domain_geometry geo; > LIST_HEAD(iova_copy); > + LIST_HEAD(group_resv_regions); > > mutex_lock(&iommu->lock); > > @@ -1644,6 +1727,13 @@ static int vfio_iommu_type1_attach_group(void *iommu_data, > goto out_detach; > } > > + iommu_get_group_resv_regions(iommu_group, &group_resv_regions);
This can fail and should have an error case. I assume we'd fail the group attach on failure. Thanks,
Alex
| |