diff options
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c')
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c index f1a55d1888cb..11af4492b4be 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c | |||
@@ -223,6 +223,8 @@ static int amdgpu_verify_access(struct ttm_buffer_object *bo, struct file *filp) | |||
223 | { | 223 | { |
224 | struct amdgpu_bo *rbo = container_of(bo, struct amdgpu_bo, tbo); | 224 | struct amdgpu_bo *rbo = container_of(bo, struct amdgpu_bo, tbo); |
225 | 225 | ||
226 | if (amdgpu_ttm_tt_get_usermm(bo->ttm)) | ||
227 | return -EPERM; | ||
226 | return drm_vma_node_verify_access(&rbo->gem_base.vma_node, filp); | 228 | return drm_vma_node_verify_access(&rbo->gem_base.vma_node, filp); |
227 | } | 229 | } |
228 | 230 | ||
@@ -622,7 +624,7 @@ static void amdgpu_ttm_tt_unpin_userptr(struct ttm_tt *ttm) | |||
622 | set_page_dirty(page); | 624 | set_page_dirty(page); |
623 | 625 | ||
624 | mark_page_accessed(page); | 626 | mark_page_accessed(page); |
625 | page_cache_release(page); | 627 | put_page(page); |
626 | } | 628 | } |
627 | 629 | ||
628 | sg_free_table(ttm->sg); | 630 | sg_free_table(ttm->sg); |