[Intel-gfx] [PATCH v10 00/10] Introduce the implementation of GVT context
Wang, Zhi A
zhi.a.wang at intel.com
Mon Jun 13 13:17:08 UTC 2016
Hi Chris:
As Joonas is on vacation, can you pick my patches? or if you have some comments I can continue improving them.
Thanks,
Zhi.
> -----Original Message-----
> From: Wang, Zhi A
> Sent: Thursday, June 09, 2016 9:44 PM
> To: intel-gfx at lists.freedesktop.org
> Cc: chris at chris-wilson.co.uk; Lv, Zhiyuan <zhiyuan.lv at intel.com>; Tian, Kevin
> <kevin.tian at intel.com>; tvrtko.ursulin at linux.intel.com;
> joonas.lahtinen at linux.intel.com; Wang, Zhi A <zhi.a.wang at intel.com>
> Subject: [PATCH v10 00/10] Introduce the implementation of GVT context
>
> 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...
>
> ABAT results and link:
>
> Series: Introduce the implementation of GVT context
> URL : https://patchwork.freedesktop.org/series/8470/
> State : success
>
> v10:
>
> - Take Joonas' comments.
>
> v9:
>
> - Take Chris' comments.
>
> v8:
>
> - Take Joonas/Chris's comments.
>
> v7:
>
> - Take Joonas comments.
>
> 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 (9):
> drm/i915: Factor out i915_pvinfo.h
> drm/i915: Use offsetof() to calculate the offset of members in PVINFO
> page
> 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 | 22 +++++
> 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 | 145
> ++++++++++++++++++++++++++++++++
> drivers/gpu/drm/i915/gvt/gvt.h | 69 +++++++++++++++
> drivers/gpu/drm/i915/gvt/hypercall.h | 38 +++++++++
> drivers/gpu/drm/i915/gvt/mpt.h | 49 +++++++++++
> drivers/gpu/drm/i915/i915_dma.c | 16 +++-
> drivers/gpu/drm/i915/i915_drv.h | 16 ++++
> drivers/gpu/drm/i915/i915_gem_context.c | 38 +++++++++
> 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 | 113
> +++++++++++++++++++++++++
> drivers/gpu/drm/i915/i915_reg.h | 12 +++
> drivers/gpu/drm/i915/i915_vgpu.c | 32 +++++--
> drivers/gpu/drm/i915/i915_vgpu.h | 90 +-------------------
> drivers/gpu/drm/i915/intel_gvt.c | 100 ++++++++++++++++++++++
> drivers/gpu/drm/i915/intel_gvt.h | 81 ++++++++++++++++++
> drivers/gpu/drm/i915/intel_lrc.c | 54 +++++++++---
> drivers/gpu/drm/i915/intel_lrc.h | 5 ++
> 22 files changed, 821 insertions(+), 120 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