[PATCH v18 0/6] drm/i915/gvt: Dma-buf support for GVT-g

Zhang, Tina tina.zhang at intel.com
Thu Nov 23 07:51:28 UTC 2017



> -----Original Message-----
> From: intel-gvt-dev [mailto:intel-gvt-dev-bounces at lists.freedesktop.org] On
> Behalf Of Zhenyu Wang
> Sent: Thursday, November 23, 2017 2:13 PM
> To: Gerd Hoffmann <kraxel at redhat.com>
> Cc: Tian, Kevin <kevin.tian at intel.com>; alex.williamson at redhat.com; intel-
> gfx at lists.freedesktop.org; joonas.lahtinen at linux.intel.com; Wang, Zhi A
> <zhi.a.wang at intel.com>; linux-kernel at vger.kernel.org;
> zhenyuw at linux.intel.com; Zhang, Tina <tina.zhang at intel.com>;
> kwankhede at nvidia.com; Lv, Zhiyuan <zhiyuan.lv at intel.com>; daniel at ffwll.ch;
> chris at chris-wilson.co.uk; intel-gvt-dev at lists.freedesktop.org; Yuan, Hang
> <hang.yuan at intel.com>
> Subject: Re: [PATCH v18 0/6] drm/i915/gvt: Dma-buf support for GVT-g
> 
> On 2017.11.15 11:49:00 +0100, Gerd Hoffmann wrote:
> > On Wed, Nov 15, 2017 at 05:11:49PM +0800, Tina Zhang wrote:
> > > v17->v18:
> > > 1) unmap vgpu's opregion when destroying vgpu.
> > > 2) update comments for VFIO_DEVICE_GET_GFX_DMABUF. (Alex)
> >
> > > This patch set adds the dma-buf support for intel GVT-g.
> > >
> > > dma-buf is an uniform mechanism to share DMA buffers across
> > > different devices and subsystems. dma-buf for intel GVT-g is mainly
> > > used to share the vgpu's framebuffer to userspace to leverage
> > > userspace graphics stacks to render the framebuffer to the display monitor.
> > >
> > > The main idea is that we create a gem object and set vgpu's
> > > framebuffer as its backing storage. Then, export a dma-buf associated with
> this gem object.
> > > With the fd of this dma-buf, userspace can directly handle this buffer.
> > >
> > > This patch set can be tried with the following example:
> > > 	git://git.kraxel.org/qemu  branch: work/intel-vgpu
> > >
> > > A topic branch with the latest patch set is:
> > >         https://github.com/intel/gvt-linux.git   branch: topic/dmabuf
> >
> > Tested-by: Gerd Hoffmann <kraxel at redhat.com>
> >
> 
> After debugging with Tina on one left race that fixed by
> https://lists.freedesktop.org/archives/intel-gvt-dev/2017-
> November/002505.html
The next version of this patch set will include this patch.
Thanks.

BR,
Tina
> 
> I still need below qemu fix for proper cursor handling, otherwise qemu just
> crashed when I click in my terminal program which hides cursor then.
> 
> diff --git a/hw/vfio/display.c b/hw/vfio/display.c index
> e500ec2cb1..d9a044b080 100644
> --- a/hw/vfio/display.c
> +++ b/hw/vfio/display.c
> @@ -169,8 +169,9 @@ static void vfio_display_dmabuf_update(void *opaque)
>      cursor = vfio_display_get_dmabuf(vdev, DRM_PLANE_TYPE_CURSOR);
>      if (vdev->cursor != cursor) {
>          vdev->cursor = cursor;
> -        dpy_gl_cursor_dmabuf(vdev->display_con,
> -                             &cursor->buf);
> +        if (cursor)
> +            dpy_gl_cursor_dmabuf(vdev->display_con,
> +                                 &cursor->buf);
>          free_bufs = true;
>      }
>      if (cursor != NULL) {
> 
> And with these it seems pretty fine now that I'll queue them up for -next pull.
> 
> thanks
> 
> --
> Open Source Technology Center, Intel ltd.
> 
> $gpg --keyserver wwwkeys.pgp.net --recv-keys 4D781827


More information about the intel-gvt-dev mailing list