gvt-g support local displays

Bug #1749248 reported by Paul Lai
14
This bug affects 2 people
Affects Status Importance Assigned to Milestone
kvm (Ubuntu)
Confirmed
Undecided
Unassigned

Bug Description

Feature description: 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.

Applied platform: Skylake, Kabylake

Dependencies: Qemu's support is needed to implement the use cases of local display or remote display via SPICE protocol.

Business value: improve user experience to get local display or remote display of vgpu.

---

The dma-buf patches are merged by kernel 4.16 as well as some bug fixing patches, including:
 47419494f216812b42f5d1c5a2984cd46253b4cc drm/i915/gvt: Use KVM r/w to access guest opregion
 412718a10926f77052d8107cb3c5d9dbc96cf8c9 drm/i915/gvt: Keep obj->dma_buf link NULL during exporting
 6ee942d5f7e3e630d3a2517e75969ce5d07c87d6 drm/i915/gvt: Refine dmabuf_obj cleanup process
 82a3b6701ab1e2cdfb64cf163fc6d1a4576329ff drm/i915/gvt: Free dmabuf_obj list in intel_vgpu_dmabuf_cleanup
 4a136d590bd4c579bb3df154363a3e5b51cb36ce drm/i915/gvt: Introduce KBL to dma-buf on Gvt-g
 dfb6ae4e14bd6542ee6caa8f661f269c94e19a9f drm/i915/gvt: Handle orphan dmabuf_objs
 e546e281d33d1fc275651aa06f0659045db67e68 drm/i915/gvt: Dmabuf support for GVT-g
 e20eaa2382e7888a4e06ccb015c476a6fb1fda0c vfio: ABI for mdev display dma-buf operation
 9f31d1063b434c2d54317461d78285b08538c01a drm/i915/gvt: Add framebuffer decoder support
 b851adeac0858c7d257b32eee2142b1519d45ccf drm/i915/gvt: Add opregion support
 a03f395ad78f883df490234366dd4e4fc922d174 drm/i915: Introduce GEM proxy
 274b2462a0493ba73957346fe5fca168e3190b53 drm/i915: Object w/o backing storage is banned by -ENXIO

Currently, Gvt-g repo has three branches which have the dma-buf features:
 1) staging branch
 Has GPU hang issue while booting Linux VM which can be solved by patch:
https://lists.freedesktop.org/archives/intel-gvt-dev/2018-February/003039.html
 2) Q1-release branch (gvt-stable-4.14)
 Still needs more tests.
 3) topic/dmabuf
 This is a branch to show the idea of dma-buf.

[Blog]
 We have a blog to talk about how to use dma-buf feature of Gvg-g and here is the link:
https://01.org/igvt-g/blogs/wangbo85/2018/sharing-guest-framebuffer-host

Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in kvm (Ubuntu):
status: New → Confirmed
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.