summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/radeon/radeon_cs.c
diff options
context:
space:
mode:
authorChristian König <christian.koenig@amd.com>2014-07-18 13:48:10 +0200
committerAlex Deucher <alexander.deucher@amd.com>2014-07-21 13:17:38 -0400
commitcc9e67e3d7000c1efbaf929c6bdaf78707407b3b (patch)
tree821067ec1bd97e60b1ff140b0f5227c436fa3808 /drivers/gpu/drm/radeon/radeon_cs.c
parent036bf46a3962c87fc6ab5e6dbc65f469730b4cf0 (diff)
drm/radeon: fix VM IB handling
Calling radeon_vm_bo_find on the IB BO during CS is illegal and can lead to an crash. Signed-off-by: Christian König <christian.koenig@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/radeon/radeon_cs.c')
-rw-r--r--drivers/gpu/drm/radeon/radeon_cs.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/gpu/drm/radeon/radeon_cs.c b/drivers/gpu/drm/radeon/radeon_cs.c
index 09fcf4dcdfdb..ae763f60c8a0 100644
--- a/drivers/gpu/drm/radeon/radeon_cs.c
+++ b/drivers/gpu/drm/radeon/radeon_cs.c
@@ -472,13 +472,13 @@ static int radeon_bo_vm_update_pte(struct radeon_cs_parser *p,
if (r)
return r;
- bo_va = radeon_vm_bo_find(vm, rdev->ring_tmp_bo.bo);
- if (bo_va == NULL) {
+ if (vm->ib_bo_va == NULL) {
DRM_ERROR("Tmp BO not in VM!\n");
return -EINVAL;
}
- r = radeon_vm_bo_update(rdev, bo_va, &rdev->ring_tmp_bo.bo->tbo.mem);
+ r = radeon_vm_bo_update(rdev, vm->ib_bo_va,
+ &rdev->ring_tmp_bo.bo->tbo.mem);
if (r)
return r;