[PATCH v3 00/22] drm/i915/gvt: Add support for huge gtt (2M/64K)

changbin.du at intel.com changbin.du at intel.com
Fri Dec 22 08:07:06 UTC 2017


From: Changbin Du <changbin.du at intel.com>

This series introduce support for 64K/2M gtt pages in GVTg guest.

The first 8 patches are really not related to Huge GTT. I just need a
clean code base to add new feature. So the GTT related code are refined.
Especially in patch #1 and #7.

Start from patch #8, we add 64K then 2M Huge GTT support.

Changbin Du (22):
  drm/i915/gvt: Rework shadow graphic memory management code
  drm/i915/gvt: Add verbose gtt shadow logs
  drm/i915/gvt: Rename ggtt related functions to be more specific
  drm/i915/gvt: Factor out
    intel_vgpu_{get_or_create_ppgtt_mm,find_destroy_ppgtt_mm} interfaces
  drm/i915/gvt: Use standard pte bit definition
  drm/i915/gvt: Refine pte shadowing process
  drm/i915/gvt: Rework shadow page management code
  drm/i915/gvt: Define PTE addr mask with GENMASK_ULL
  drm/i915/gvt: Add new 64K entry type
  drm/i915/gvt: Add PTE IPS bit operations
  drm/i915/gvt: Handle MMIO GEN8_GAMW_ECO_DEV_RW_IA for 64K GTT
  drm/i915/gvt: Detect 64K gtt entry by IPS bit of PDE
  drm/i915/gvt: Add software PTE flag to mark special 64K splited entry
  drm/i915/gvt: Add GTT clear_pse operation
  drm/i915/gvt: Split ppgtt_alloc_spt into two parts
  drm/i915/gvt: Make PTE iterator 64K entry aware
  drm/i915/gvt: Add 64K huge gtt support
  drm/i915/gvt: Add 2M huge gtt support
  drm/i915/gvt: Ignore guest write to unused PTE entries
  drm/i915/gvt: Handle special sequence on PDE IPS bit
  drm/i915/gvt: Fix error handling in ppgtt_populate_spt_by_guest_entry
  drm/i915: Enable platform support for vGPU huge gtt pages

 drivers/gpu/drm/i915/gvt/Makefile     |    2 +-
 drivers/gpu/drm/i915/gvt/gtt.c        | 1797 ++++++++++++++++++---------------
 drivers/gpu/drm/i915/gvt/gtt.h        |  188 ++--
 drivers/gpu/drm/i915/gvt/gvt.h        |    2 +
 drivers/gpu/drm/i915/gvt/handlers.c   |   34 +-
 drivers/gpu/drm/i915/gvt/mmio.c       |   61 +-
 drivers/gpu/drm/i915/gvt/mpt.h        |   36 +-
 drivers/gpu/drm/i915/gvt/page_track.c |  145 +++
 drivers/gpu/drm/i915/gvt/page_track.h |   51 +
 drivers/gpu/drm/i915/gvt/scheduler.c  |   48 +-
 drivers/gpu/drm/i915/gvt/trace.h      |   38 +-
 drivers/gpu/drm/i915/gvt/vgpu.c       |    2 +
 drivers/gpu/drm/i915/i915_gem.c       |    8 +-
 drivers/gpu/drm/i915/i915_pvinfo.h    |    1 +
 drivers/gpu/drm/i915/i915_vgpu.h      |    6 +
 15 files changed, 1381 insertions(+), 1038 deletions(-)
 create mode 100644 drivers/gpu/drm/i915/gvt/page_track.c
 create mode 100644 drivers/gpu/drm/i915/gvt/page_track.h

-- 
2.7.4



More information about the intel-gvt-dev mailing list