Re: (proposal) RE: [PATCH v7 00/16] vfio: expose virtual Shared Virtual Addressing to VMs

Jason Gunthorpe
2020-11-03T13:23:51Z

On Tue, Nov 03, 2020 at 02:18:52PM +0100, joro@8bytes.org wrote:
> On Tue, Nov 03, 2020 at 08:56:43AM -0400, Jason Gunthorpe wrote:
> > On Tue, Nov 03, 2020 at 10:52:09AM +0100, joro@8bytes.org wrote:
> > > So having said this, what is the benefit of exposing those SVA internals
> > > to user-space?
> >
> > Only the device use of the PASID is device specific, the actual PASID
> > and everything on the IOMMU side is generic.
> >
> > There is enough API there it doesn't make sense to duplicate it into
> > every single SVA driver.
>
> What generic things have to be done by the drivers besides
> allocating/deallocating PASIDs and binding an address space to it?
>
> Is there anything which isn't better handled in a kernel-internal
> library which drivers just use?

Userspace needs fine grained control over the composition of the page
table behind the PASID, 1:1 with the mm_struct is only one use case.

Userspace needs to be able to handle IOMMU faults, apparently

The Intel guys had a bunch of other stuff too, looking through the new
API they are proposing for vfio gives some flavour what they think is
needed..

Jason