[Intel-gfx] [PATCH 0/9] Introduce the implementation of GVT context

Wang, Zhi A zhi.a.wang at intel.com
Thu Jun 2 16:35:51 UTC 2016


Drop this one. Will resend it later.

> -----Original Message-----
> From: Wang, Zhi A
> Sent: Thursday, June 02, 2016 7:27 PM
> To: intel-gfx at lists.freedesktop.org; tvrtko.ursulin at linux.intel.com;
> joonas.lahtinen at linux.intel.com; Tian, Kevin <kevin.tian at intel.com>; Lv,
> Zhiyuan <zhiyuan.lv at intel.com>; chris at chris-wilson.co.uk
> Cc: Wang, Zhi A <zhi.a.wang at intel.com>
> Subject: [PATCH 0/9] Introduce the implementation of GVT context
> 
> Mostly this patchset introduces the implementation of GVT context. GVT
> context is a special GEM context used by GVT-g. GVT-g uses it as the shadow
> context.It doesn't have a drm client nor a PPGTT. And it requires a larger ring
> buffer with several special features need by GVT-g workload scheduler like
> context status change notification, context single submission...
> 
> v6:
> 
> - Take Chris comments.
> 
> v5:
> 
> - Drop PPGTT related patches.
> - Let most functions take struct drm_i915_private *
> - Fixed some misspelled words in Kconfig
> - Only complied some feature when CONFIG_DRM_I915_GVT=y
> - Drop the fecne related changes, will send it after this series.
> 
> v4:
> 
> - Based on the latest drm-intel-nightly branch.
> - Drop PPGTT refactor patches. (GVT-g will use LRI to load PDPs)
> - Drop i915_gem_context() refactor patches, reuse kernel context functions.
>   (Dave Gordon)
> - Drop context allocation params and refactor as the lrc deferred
>   allocation function has been refactored in another styles.
> - Re-wrtie GVT context creation function
> 
> Difference from community release
> ---------------------------------
> 
> This patchset is different from regular iGVT-g code release[4], which is still
> based on old host-mediated architecture. Furthermore, this patchset only
> supports BDW whereas code release supports HSW/BDW/SKL.
> We will add SKL support later based on this RFC code and HSW support will be
> dropped.
> 
> Internally we tested this RFC patchset with both linux and windows VM and the
> architecture changes work fine.
> 
> Acknowledgment
> ---------------
> 
> iGVT-g implementation is several years effort and many people contributed to
> the code. There names are not here yet. In later formal patchset we will reflect
> individual's contribution.
> 
> Meanwhile, in the previous iGVT-g related discussion, Daniel, Chris and Joonas
> ever gave very good inputs. We appreciate them and look forward to more
> comments/suggestions from community.
> 
> We are trying to get more familiar with i915 but may still have gaps.
> We are willing to adopt suggestions to keep improving. We hope to work with
> community together to make iGVT-g a great component in i915 to support
> graphics virtualization. Thanks!
> 
> Reference
> ---------
> 
> [1] https://01.org/igvt-g
> [2]
> http://lists.freedesktop.org/archives/intel-gfx/2014-September/053098.html
> [3]
> http://lists.freedesktop.org/archives/intel-gfx/2015-September/075397.html
> 
> Bing Niu (1):
>   drm/i915: Introduce host graphics memory partition for GVT-g
> 
> Zhi Wang (8):
>   drm/i915: Factor out i915_pvinfo.h
>   drm/i915: Fold vGPU active check into inner functions
>   drm/i915: gvt: Introduce the basic architecture of GVT-g
>   drm/i915: Make ring buffer size of a LRC context configurable
>   drm/i915: Make addressing mode bits in context descriptor configurable
>   drm/i915: Introduce execlist context status change notification
>   drm/i915: Support LRC context single submission
>   drm/i915: Introduce GVT context creation API
> 
>  drivers/gpu/drm/i915/Kconfig            |  19 ++++
>  drivers/gpu/drm/i915/Makefile           |   5 +
>  drivers/gpu/drm/i915/gvt/Makefile       |   5 +
>  drivers/gpu/drm/i915/gvt/debug.h        |  34 ++++++
>  drivers/gpu/drm/i915/gvt/gvt.c          | 181
> ++++++++++++++++++++++++++++++++
>  drivers/gpu/drm/i915/gvt/gvt.h          |  75 +++++++++++++
>  drivers/gpu/drm/i915/gvt/hypercall.h    |  38 +++++++
>  drivers/gpu/drm/i915/gvt/mpt.h          |  49 +++++++++
>  drivers/gpu/drm/i915/i915_dma.c         |  17 ++-
>  drivers/gpu/drm/i915/i915_drv.h         |  15 +++
>  drivers/gpu/drm/i915/i915_gem_context.c |  35 ++++++
>  drivers/gpu/drm/i915/i915_gem_gtt.c     |  11 +-
>  drivers/gpu/drm/i915/i915_params.c      |   5 +
>  drivers/gpu/drm/i915/i915_params.h      |   1 +
>  drivers/gpu/drm/i915/i915_pvinfo.h      | 116 ++++++++++++++++++++
>  drivers/gpu/drm/i915/i915_vgpu.c        |  32 ++++--
>  drivers/gpu/drm/i915/i915_vgpu.h        |  90 +---------------
>  drivers/gpu/drm/i915/intel_gvt.c        |  90 ++++++++++++++++
>  drivers/gpu/drm/i915/intel_gvt.h        |  71 +++++++++++++
>  drivers/gpu/drm/i915/intel_lrc.c        |  55 +++++++---
>  drivers/gpu/drm/i915/intel_lrc.h        |  16 +++
>  21 files changed, 841 insertions(+), 119 deletions(-)  create mode 100644
> drivers/gpu/drm/i915/gvt/Makefile  create mode 100644
> drivers/gpu/drm/i915/gvt/debug.h  create mode 100644
> drivers/gpu/drm/i915/gvt/gvt.c  create mode 100644
> drivers/gpu/drm/i915/gvt/gvt.h  create mode 100644
> drivers/gpu/drm/i915/gvt/hypercall.h
>  create mode 100644 drivers/gpu/drm/i915/gvt/mpt.h  create mode 100644
> drivers/gpu/drm/i915/i915_pvinfo.h
>  create mode 100644 drivers/gpu/drm/i915/intel_gvt.c  create mode 100644
> drivers/gpu/drm/i915/intel_gvt.h
> 
> --
> 1.9.1



More information about the Intel-gfx mailing list