Re: [PATCH v2 1/1] iommu: Bind process address spaces to devices

From: Joerg Roedel
Date: Mon Mar 25 2019 - 10:44:18 EST


Hey Jean-Philippe,

thanks for the patch, I think we are on the finish line with this
interface. Just one small question below.

On Wed, Mar 20, 2019 at 03:02:58PM +0000, Jean-Philippe Brucker wrote:
> +int iommu_sva_set_ops(struct iommu_sva *handle,
> + const struct iommu_sva_ops *sva_ops)
> +{
> + const struct iommu_ops *ops = handle->dev->bus->iommu_ops;
> +
> + if (!ops || !ops->sva_set_ops)
> + return -ENODEV;
> +
> + return ops->sva_set_ops(handle, sva_ops);
> +}

What is the purpose of the sva_set_ops call-back in iommu-ops? Is the
IOMMU driver supposed to do some extra setup work with the provided ops?
Otherwise we can just store the pointer in 'struct iommu_sva' without
calling into the iommu driver.


Regards,

Joerg