[CI v5 00/20] xe bo shrinker and exhaustive eviction

Thomas Hellström thomas.hellstrom at linux.intel.com
Tue May 28 12:33:21 UTC 2024


CI testing of shrinker- and eviction patches

v2:
- Checkpatch error removal
v3:
- Fix incorrect patch order
- Fix compilation errors in other drivers
v4:
- Fix an uninitialized drm_exec member
v5:
- Test an alternative approach for trylocking

Thomas Hellström (20):
  drm/ttm: Allow TTM LRU list nodes of different types
  drm/ttm: Slightly clean up LRU list iteration
  drm/ttm: Use LRU hitches
  drm/ttm, drm/amdgpu, drm/xe: Consider hitch moves within bulk sublist
    moves
  drm/ttm: Provide a generic LRU walker helper
  drm/ttm: Use the LRU walker helper for swapping
  drm/ttm: Use the LRU walker for eviction
  drm/ttm: Add a virtual base class for graphics memory backup
  drm/ttm/pool: Provide a helper to shrink pages
  drm/ttm: Use fault-injection to test error paths
  drm/ttm, drm/xe: Add a shrinker for xe bos
  dma-buf/dma-resv: Introduce dma_resv_trylock_ctx()
  drm/exec: Add a snapshot capability
  drm/exec: Introduce an evict mode
  drm/ttm: Support drm_exec locking for eviction and swapping
  drm/ttm: Convert ttm vm to using drm_exec
  drm/xe: Use drm_exec for fault locking
  drm/exec: Introduce drm_exec_sanitize_for_trylock
  drm/ttm: Use drm_exec_trylock for bo initialization
  drm/xe: Initial support for drm exec locking during validate

 drivers/gpu/drm/Kconfig                    |  10 +
 drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c    |   4 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c     |   4 +
 drivers/gpu/drm/drm_exec.c                 | 210 ++++++++-
 drivers/gpu/drm/i915/gem/i915_gem_ttm.c    |   4 +-
 drivers/gpu/drm/nouveau/nouveau_gem.c      |   4 +-
 drivers/gpu/drm/radeon/radeon_gem.c        |   4 +-
 drivers/gpu/drm/ttm/Makefile               |   2 +-
 drivers/gpu/drm/ttm/ttm_backup_shmem.c     | 137 ++++++
 drivers/gpu/drm/ttm/ttm_bo.c               | 517 +++++++++++----------
 drivers/gpu/drm/ttm/ttm_bo_util.c          | 241 ++++++++++
 drivers/gpu/drm/ttm/ttm_bo_vm.c            | 101 ++--
 drivers/gpu/drm/ttm/ttm_device.c           |  29 +-
 drivers/gpu/drm/ttm/ttm_pool.c             | 412 +++++++++++++++-
 drivers/gpu/drm/ttm/ttm_resource.c         | 264 ++++++++---
 drivers/gpu/drm/ttm/ttm_tt.c               |  37 ++
 drivers/gpu/drm/vmwgfx/vmwgfx_page_dirty.c |   6 +-
 drivers/gpu/drm/xe/Makefile                |   1 +
 drivers/gpu/drm/xe/display/xe_fb_pin.c     |   2 +-
 drivers/gpu/drm/xe/tests/xe_bo.c           | 124 ++++-
 drivers/gpu/drm/xe/tests/xe_bo_test.c      |   1 +
 drivers/gpu/drm/xe/tests/xe_bo_test.h      |   1 +
 drivers/gpu/drm/xe/tests/xe_dma_buf.c      |   4 +-
 drivers/gpu/drm/xe/tests/xe_migrate.c      |   2 +-
 drivers/gpu/drm/xe/xe_bo.c                 | 173 +++++--
 drivers/gpu/drm/xe/xe_bo.h                 |   8 +-
 drivers/gpu/drm/xe/xe_device.c             |   8 +
 drivers/gpu/drm/xe/xe_device_types.h       |   2 +
 drivers/gpu/drm/xe/xe_dma_buf.c            |   2 +-
 drivers/gpu/drm/xe/xe_ggtt.c               |   2 +-
 drivers/gpu/drm/xe/xe_gt_pagefault.c       |   2 +-
 drivers/gpu/drm/xe/xe_shrinker.c           | 224 +++++++++
 drivers/gpu/drm/xe/xe_shrinker.h           |  18 +
 drivers/gpu/drm/xe/xe_vm.c                 |   8 +-
 include/drm/drm_exec.h                     |  39 +-
 include/drm/ttm/ttm_backup.h               | 136 ++++++
 include/drm/ttm/ttm_bo.h                   |  59 ++-
 include/drm/ttm/ttm_pool.h                 |   5 +
 include/drm/ttm/ttm_resource.h             |  99 +++-
 include/drm/ttm/ttm_tt.h                   |  20 +
 include/linux/dma-resv.h                   |  23 +-
 41 files changed, 2480 insertions(+), 469 deletions(-)
 create mode 100644 drivers/gpu/drm/ttm/ttm_backup_shmem.c
 create mode 100644 drivers/gpu/drm/xe/xe_shrinker.c
 create mode 100644 drivers/gpu/drm/xe/xe_shrinker.h
 create mode 100644 include/drm/ttm/ttm_backup.h

-- 
2.44.0



More information about the Intel-xe mailing list