diff options
author | Christian König <christian.koenig@amd.com> | 2016-02-08 05:08:35 -0500 |
---|---|---|
committer | Alex Deucher <alexander.deucher@amd.com> | 2016-02-10 14:17:16 -0500 |
commit | cc325d1913475655b81c0417ba04c84f168ac78c (patch) | |
tree | 6dcc586983e753988a4b2713678f78bbb49ded6e /drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c | |
parent | 04db4caf5c836c211977a54c9218f2cdee14897f (diff) |
drm/amdgpu: check userptrs mm earlier
Instead of when we try to bind it check the usermm when
we try to use it in the IOCTLs.
Signed-off-by: Christian König <christian.koenig@amd.com>
Acked-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c')
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c index 84e850f81f39..b1a611e79c94 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c | |||
@@ -310,7 +310,7 @@ int amdgpu_mode_dumb_mmap(struct drm_file *filp, | |||
310 | return -ENOENT; | 310 | return -ENOENT; |
311 | } | 311 | } |
312 | robj = gem_to_amdgpu_bo(gobj); | 312 | robj = gem_to_amdgpu_bo(gobj); |
313 | if (amdgpu_ttm_tt_has_userptr(robj->tbo.ttm) || | 313 | if (amdgpu_ttm_tt_get_usermm(robj->tbo.ttm) || |
314 | (robj->flags & AMDGPU_GEM_CREATE_NO_CPU_ACCESS)) { | 314 | (robj->flags & AMDGPU_GEM_CREATE_NO_CPU_ACCESS)) { |
315 | drm_gem_object_unreference_unlocked(gobj); | 315 | drm_gem_object_unreference_unlocked(gobj); |
316 | return -EPERM; | 316 | return -EPERM; |
@@ -638,7 +638,7 @@ int amdgpu_gem_op_ioctl(struct drm_device *dev, void *data, | |||
638 | break; | 638 | break; |
639 | } | 639 | } |
640 | case AMDGPU_GEM_OP_SET_PLACEMENT: | 640 | case AMDGPU_GEM_OP_SET_PLACEMENT: |
641 | if (amdgpu_ttm_tt_has_userptr(robj->tbo.ttm)) { | 641 | if (amdgpu_ttm_tt_get_usermm(robj->tbo.ttm)) { |
642 | r = -EPERM; | 642 | r = -EPERM; |
643 | amdgpu_bo_unreserve(robj); | 643 | amdgpu_bo_unreserve(robj); |
644 | break; | 644 | break; |