[Intel-gfx] [PATCH 00/20] ppgtt cleanups / scratch merge

Mika Kuoppala mika.kuoppala at linux.intel.com
Thu May 21 07:37:28 PDT 2015


Hi,

My take on cleaning up more of the i915_gem_gtt.c.
The goal is to have generic tools to allocate and map
any type of paging structure.

And at the end we will have one instance of each scratch
chain type (scratch pd->pte->page) across all ppgtts,
saving 2 pages of memory per ppgtt.

Mika Kuoppala (20):
  drm/i915/gtt: Mark TLBS dirty for gen8+
  drm/i915: Force PD restore on dirty ppGTTs
  drm/i915/gtt: Check va range against vm size
  drm/i915/gtt: Allow >= 4GB sizes for vm.
  drm/i915/gtt: Don't leak scratch page on mapping error
  drm/i915/gtt: Remove _single from page table allocator
  drm/i915/gtt: Introduce i915_page_dir_dma_addr
  drm/i915/gtt: Introduce struct i915_page_dma
  drm/i915/gtt: Rename unmap_and_free_px to free_px
  drm/i915/gtt: Remove superfluous free_pd with gen6/7
  drm/i915/gtt: Introduce fill_page_dma()
  drm/i915/gtt: Introduce kmap|kunmap for dma page
  drm/i915/gtt: Introduce copy_page_dma and copy_px
  drm/i915/gtt: Use macros to access dma mapped pages
  drm/i915/gtt: Make scratch page i915_page_dma compatible
  drm/i915/gtt: Fill scratch page
  drm/i915/gtt: Pin vma during virtual address allocation
  drm/i915/gtt: Cleanup page directory encoding
  drm/i915/gtt: Move scratch_pd and scratch_pt into vm area
  drm/i915/gtt: One instance of scratch page table/directory

 drivers/char/agp/intel-gtt.c        |   4 +-
 drivers/gpu/drm/i915/i915_debugfs.c |  44 +--
 drivers/gpu/drm/i915/i915_gem.c     |   6 +-
 drivers/gpu/drm/i915/i915_gem_gtt.c | 662 ++++++++++++++++++++----------------
 drivers/gpu/drm/i915/i915_gem_gtt.h |  55 +--
 drivers/gpu/drm/i915/intel_lrc.c    |  69 ++--
 include/drm/intel-gtt.h             |   4 +-
 7 files changed, 470 insertions(+), 374 deletions(-)

-- 
1.9.1



More information about the Intel-gfx mailing list