Re: [Xen-devel] [PATCH 0/1] drm/xen-zcopy: Add Xen zero-copy helper DRM driver

From: Daniel Vetter
Date: Tue Apr 24 2018 - 07:55:00 EST


On Mon, Apr 23, 2018 at 03:10:35PM +0300, Oleksandr Andrushchenko wrote:
> On 04/23/2018 02:52 PM, Wei Liu wrote:
> > On Fri, Apr 20, 2018 at 02:25:20PM +0300, Oleksandr Andrushchenko wrote:
> > > > > the gntdev.
> > > > >
> > > > > I think this is generic enough that it could be implemented by a
> > > > > device not tied to Xen. AFAICT the hyper_dma guys also wanted
> > > > > something similar to this.
> > > > You can't just wrap random userspace memory into a dma-buf. We've just had
> > > > this discussion with kvm/qemu folks, who proposed just that, and after a
> > > > bit of discussion they'll now try to have a driver which just wraps a
> > > > memfd into a dma-buf.
> > > So, we have to decide either we introduce a new driver
> > > (say, under drivers/xen/xen-dma-buf) or extend the existing
> > > gntdev/balloon to support dma-buf use-cases.
> > >
> > > Can anybody from Xen community express their preference here?
> > >
> > Oleksandr talked to me on IRC about this, he said a few IOCTLs need to
> > be added to either existing drivers or a new driver.
> >
> > I went through this thread twice and skimmed through the relevant
> > documents, but I couldn't see any obvious pros and cons for either
> > approach. So I don't really have an opinion on this.
> >
> > But, assuming if implemented in existing drivers, those IOCTLs need to
> > be added to different drivers, which means userspace program needs to
> > write more code and get more handles, it would be slightly better to
> > implement a new driver from that perspective.
> If gntdev/balloon extension is still considered:
>
> All the IOCTLs will be in gntdev driver (in current xen-zcopy terminology):
>  - DRM_ICOTL_XEN_ZCOPY_DUMB_FROM_REFS
>  - DRM_IOCTL_XEN_ZCOPY_DUMB_TO_REFS
>  - DRM_IOCTL_XEN_ZCOPY_DUMB_WAIT_FREE

s/DUMB/DMA_BUF/ please. This is generic dma-buf, it has nothing to do with
the dumb scanout buffer support in the drm/gfx subsystem. This here can be
used for any zcopy sharing among guests (as long as your endpoints
understands dma-buf, which most relevant drivers do).
-Daniel

>
> Balloon driver extension, which is needed for contiguous/DMA
> buffers, will be to provide new *kernel API*, no UAPI is needed.
>
> > Wei.
> Thank you,
> Oleksandr
> _______________________________________________
> dri-devel mailing list
> dri-devel@xxxxxxxxxxxxxxxxxxxxx
> https://lists.freedesktop.org/mailman/listinfo/dri-devel

--
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch