drm/radeon: fix the crash in test functions
radeon_copy_dma and radeon_copy_blit must be called with a valid reservation object. Otherwise a crash will be provoked. We borrow the object from vram BO. bug: https://bugs.freedesktop.org/show_bug.cgi?id=88464 Cc: stable@vger.kernel.org Reviewed-by: Christian König <christian.koenig@amd.com> Signed-off-by: Ilija Hadzic <ihadzic@research.bell-labs.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
parent
3f5e1b4f58
commit
92b712b739
1 changed files with 4 additions and 4 deletions
|
@ -119,11 +119,11 @@ static void radeon_do_test_moves(struct radeon_device *rdev, int flag)
|
||||||
if (ring == R600_RING_TYPE_DMA_INDEX)
|
if (ring == R600_RING_TYPE_DMA_INDEX)
|
||||||
fence = radeon_copy_dma(rdev, gtt_addr, vram_addr,
|
fence = radeon_copy_dma(rdev, gtt_addr, vram_addr,
|
||||||
size / RADEON_GPU_PAGE_SIZE,
|
size / RADEON_GPU_PAGE_SIZE,
|
||||||
NULL);
|
vram_obj->tbo.resv);
|
||||||
else
|
else
|
||||||
fence = radeon_copy_blit(rdev, gtt_addr, vram_addr,
|
fence = radeon_copy_blit(rdev, gtt_addr, vram_addr,
|
||||||
size / RADEON_GPU_PAGE_SIZE,
|
size / RADEON_GPU_PAGE_SIZE,
|
||||||
NULL);
|
vram_obj->tbo.resv);
|
||||||
if (IS_ERR(fence)) {
|
if (IS_ERR(fence)) {
|
||||||
DRM_ERROR("Failed GTT->VRAM copy %d\n", i);
|
DRM_ERROR("Failed GTT->VRAM copy %d\n", i);
|
||||||
r = PTR_ERR(fence);
|
r = PTR_ERR(fence);
|
||||||
|
@ -170,11 +170,11 @@ static void radeon_do_test_moves(struct radeon_device *rdev, int flag)
|
||||||
if (ring == R600_RING_TYPE_DMA_INDEX)
|
if (ring == R600_RING_TYPE_DMA_INDEX)
|
||||||
fence = radeon_copy_dma(rdev, vram_addr, gtt_addr,
|
fence = radeon_copy_dma(rdev, vram_addr, gtt_addr,
|
||||||
size / RADEON_GPU_PAGE_SIZE,
|
size / RADEON_GPU_PAGE_SIZE,
|
||||||
NULL);
|
vram_obj->tbo.resv);
|
||||||
else
|
else
|
||||||
fence = radeon_copy_blit(rdev, vram_addr, gtt_addr,
|
fence = radeon_copy_blit(rdev, vram_addr, gtt_addr,
|
||||||
size / RADEON_GPU_PAGE_SIZE,
|
size / RADEON_GPU_PAGE_SIZE,
|
||||||
NULL);
|
vram_obj->tbo.resv);
|
||||||
if (IS_ERR(fence)) {
|
if (IS_ERR(fence)) {
|
||||||
DRM_ERROR("Failed VRAM->GTT copy %d\n", i);
|
DRM_ERROR("Failed VRAM->GTT copy %d\n", i);
|
||||||
r = PTR_ERR(fence);
|
r = PTR_ERR(fence);
|
||||||
|
|
Loading…
Reference in a new issue