Before trying to do this it looks to me we need the following during theAgree. We may also need to introduce something like
probe
1) if set_map() is not supported by the vDPA device probe the IOMMU that is
supported by the vDPA device
2) allocate IOMMU domain
And then:
3) pin pages through GUP and do proper accounting
4) store GPA->HPA mapping in the umem
5) generate diffs of memory table and using IOMMU API to setup the dma
mapping in this method
For 1), I'm not sure parent is sufficient for to doing this or need to
introduce new API like iommu_device in mdev.
the iommu_device.