[PATCH 0/5] drm/ttm, amdgpu: fix crashes due to shadow page table evictions
Nicolai Hähnle
nhaehnle at gmail.com
Thu Dec 15 17:10:10 UTC 2016
Fix a bunch of related crashes in amdgpu that occur when shadow page tables
are kicked out of the GART.
One of the issues was that during command submission, we rely on a
device-global evictions counter to skip some of the work of page-table
validation. The driver was never informed of evictions from GART, so this
series adds an evict parameter to ttm_bo_driver::move_notify.
There's still the evict parameter on ttm_bo_driver::move which is used by
radeon and nouveau for the call to ttm_bo_move_accel_cleanup. The 'evict'
parameter there should probably be more accurately called 'wait', but unless
that wait can always be avoided, the evict parameter on ttm_bo_driver::move
needs to stay.
Please review!
Nicolai
---
drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c | 20 ++++++++++++++------
drivers/gpu/drm/amd/amdgpu/amdgpu_object.c | 5 +++++
drivers/gpu/drm/amd/amdgpu/amdgpu_object.h | 12 +++++++++++-
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c | 4 ----
drivers/gpu/drm/nouveau/nouveau_bo.c | 3 ++-
drivers/gpu/drm/qxl/qxl_ttm.c | 1 +
drivers/gpu/drm/radeon/radeon_object.c | 1 +
drivers/gpu/drm/radeon/radeon_object.h | 1 +
drivers/gpu/drm/ttm/ttm_bo.c | 8 ++++----
drivers/gpu/drm/virtio/virtgpu_ttm.c | 1 +
drivers/gpu/drm/vmwgfx/vmwgfx_buffer.c | 1 +
include/drm/ttm/ttm_bo_driver.h | 10 ++++++++--
12 files changed, 49 insertions(+), 18 deletions(-)
More information about the dri-devel
mailing list