DF-4429 / fix.diff
--- a/sys/dev/drm/radeon/radeon_ttm.c +++ b/sys/dev/drm/radeon/radeon_ttm.c @@ -232,16 +232,16 @@ static void radeon_move_null(struct ttm_buffer_object *bo, new_mem->mm_node = NULL; } -static int radeon_verify_access(struct ttm_buffer_object *bo, struct file *filp) -{ -#if 0 - struct radeon_bo *rbo = container_of(bo, struct radeon_bo, tbo); -#endif +static int radeon_verify_access(struct ttm_buffer_object *bo, struct file *filp) +{ + struct radeon_bo *rbo = container_of(bo, struct radeon_bo, tbo); - if (radeon_ttm_tt_has_userptr(bo->ttm)) - return -EPERM; + if (radeon_ttm_tt_has_userptr(bo->ttm)) + return -EPERM; - return 0; -} + return drm_vma_node_verify_access(&rbo->gem_base.vma_node, + filp->private_data); +} static void radeon_move_null(struct ttm_buffer_object *bo, struct ttm_mem_reg *new_mem) |