drm/radeon: make sure ib bo is properly bound and up to date in vm space
authorJerome Glisse <jglisse@redhat.com>
Mon, 13 Aug 2012 16:07:33 +0000 (12:07 -0400)
committerAlex Deucher <alexander.deucher@amd.com>
Thu, 20 Sep 2012 17:10:39 +0000 (13:10 -0400)
Make sure that the ib bo is bound and is page table is up to date
in the virtual address space.

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
drivers/gpu/drm/radeon/radeon_cs.c

index 300fc25..3ae7c27 100644 (file)
@@ -372,10 +372,15 @@ static int radeon_cs_ib_chunk(struct radeon_device *rdev,
 static int radeon_bo_vm_update_pte(struct radeon_cs_parser *parser,
                                   struct radeon_vm *vm)
 {
+       struct radeon_device *rdev = parser->rdev;
        struct radeon_bo_list *lobj;
        struct radeon_bo *bo;
        int r;
 
+       r = radeon_vm_bo_update_pte(rdev, vm, rdev->ring_tmp_bo.bo, &rdev->ring_tmp_bo.bo->tbo.mem);
+       if (r) {
+               return r;
+       }
        list_for_each_entry(lobj, &parser->validated, tv.head) {
                bo = lobj->bo;
                r = radeon_vm_bo_update_pte(parser->rdev, vm, bo, &bo->tbo.mem);