Mapping a non-contiguous VRAM BO doesn't work, start to fix this. v2: - Include missing local change v3: - Use GPU for non-visible access - Take PM ref in xe_ttm_access_memory - Disable VMAP for non-contiguous BOs v4: - Fix less than page sized non-visible access - Add PM ref to xe_ttm_access_memory - Add PM ref to delayed snapshot capture worker - Fix a couple of warnings in xe_res_cursor - Test all possible code paths Matthew Brost (9): drm/xe: Add xe_bo_vm_access drm/ttm: Add ttm_bo_access drm/xe: Add xe_ttm_access_memory drm/xe: Take PM ref in delayed snapshot capture worker drm/xe: Update xe_ttm_access_memory to use GPU for non-visible access drm/xe/display: Update intel_bo_read_from_page to use ttm_bo_access drm/xe: Use ttm_bo_access in xe_vm_snapshot_capture_delayed drm/xe: Set XE_BO_FLAG_PINNED in migrate selftest BOs drm/xe: Only allow contiguous BOs to use xe_bo_vmap drivers/gpu/drm/ttm/ttm_bo_util.c | 86 +++++++ drivers/gpu/drm/ttm/ttm_bo_vm.c | 65 +----- drivers/gpu/drm/xe/display/intel_bo.c | 25 +- drivers/gpu/drm/xe/tests/xe_migrate.c | 13 +- drivers/gpu/drm/xe/xe_bo.c | 106 +++++++-- drivers/gpu/drm/xe/xe_devcoredump.c | 6 + drivers/gpu/drm/xe/xe_migrate.c | 325 ++++++++++++++++++++++++++ drivers/gpu/drm/xe/xe_migrate.h | 4 + drivers/gpu/drm/xe/xe_vm.c | 17 +- include/drm/ttm/ttm_bo.h | 2 + 10 files changed, 533 insertions(+), 116 deletions(-) -- 2.34.1