[Intel-gfx] [PATCH v3 00/25] PPGTT dynamic page allocations

Michel Thierry michel.thierry at intel.com
Tue Jan 13 03:52:14 PST 2015


This new patchset addresses most of the comments from v2. It still teardowns
pagetables (which I plan to ammend shortly), but I think there were already
enough changes to justify it.

For GEN8, it has also been extended to work in logical ring submission (lrc)
mode, as it will be the preferred mode of operation.
I also tried to update the lrc code at the same time the ppgtt refactoring
occurred, leaving only one patch that is exclusively for lrc.

This list can be seen in 3 parts:
[01-09] Include code rework for PPGTT (all GENs).
[10-15] Adds page table allocation for GEN6/GEN7
[16-25] Enables dynamic allocation in GEN8,for both legacy and
execlist submission modes.

Ben Widawsky (22):
  drm/i915/trace: Fix offsets for 64b
  drm/i915: Rename to GEN8_LEGACY_PDPES
  drm/i915: Setup less PPGTT on failed page_directory
  drm/i915/gen8: Un-hardcode number of page directories
  drm/i915: Range clearing is PPGTT agnostic
  drm/i915: page table abstractions
  drm/i915: Complete page table structures
  drm/i915: Create page table allocators
  drm/i915: Track GEN6 page table usage
  drm/i915: Extract context switch skip and pd load logic
  drm/i915: Track page table reload need
  drm/i915: Initialize all contexts
  drm/i915: Finish gen6/7 dynamic page table allocation
  drm/i915/bdw: Use dynamic allocation idioms on free
  drm/i915/bdw: page directories rework allocation
  drm/i915/bdw: pagetable allocation rework
  drm/i915/bdw: Update pdp switch and point unused PDPs to scratch page
  drm/i915: num_pd_pages/num_pd_entries isn't useful
  drm/i915: Extract PPGTT param from page_directory alloc
  drm/i915/bdw: Split out mappings
  drm/i915/bdw: begin bitmap tracking
  drm/i915/bdw: Dynamic page table allocations

Michel Thierry (3):
  drm/i915: Plumb drm_device through page tables operations
  drm/i915: Add dynamic page trace events
  drm/i915/bdw: Support dynamic pdp updates in lrc mode

 drivers/gpu/drm/i915/i915_debugfs.c        |    7 +-
 drivers/gpu/drm/i915/i915_gem.c            |   11 +
 drivers/gpu/drm/i915/i915_gem_context.c    |   62 +-
 drivers/gpu/drm/i915/i915_gem_execbuffer.c |   11 +
 drivers/gpu/drm/i915/i915_gem_gtt.c        | 1184 ++++++++++++++++++++--------
 drivers/gpu/drm/i915/i915_gem_gtt.h        |  217 ++++-
 drivers/gpu/drm/i915/i915_trace.h          |  123 ++-
 drivers/gpu/drm/i915/intel_lrc.c           |   80 +-
 8 files changed, 1329 insertions(+), 366 deletions(-)

-- 
2.1.1



More information about the Intel-gfx mailing list