summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/amd/amdgpu/amdgpu_sched.c
diff options
context:
space:
mode:
authorChristian König <christian.koenig@amd.com>2016-01-18 17:01:42 +0100
committerAlex Deucher <alexander.deucher@amd.com>2016-02-10 14:16:57 -0500
commit94dd0a4ae0b1af997b1f45793e5fd5b47f4ffc18 (patch)
tree4752f0bba41887463fb60b08b5cd7912626a9dc3 /drivers/gpu/drm/amd/amdgpu/amdgpu_sched.c
parent8d0a7cea824a2784150ef7f25a1e88f18a2a8f69 (diff)
drm/amdgpu: merge vm_grab_id and vm_fence v2
No need for an extra function any more. v2: comment cleanups Signed-off-by: Christian König <christian.koenig@amd.com> Reviewed-by: Chunming Zhou <david1.zhou@amd.com> Acked-by: Alex Deucher <alexander.deucher@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_sched.c')
-rw-r--r--drivers/gpu/drm/amd/amdgpu/amdgpu_sched.c13
1 files changed, 4 insertions, 9 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_sched.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_sched.c
index b22a95f0571c..76a1f823d983 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_sched.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_sched.c
@@ -38,19 +38,14 @@ static struct fence *amdgpu_sched_dependency(struct amd_sched_job *sched_job)
if (fence == NULL && vm && !job->ibs->grabbed_vmid) {
struct amdgpu_ring *ring = job->ibs->ring;
- struct amdgpu_device *adev = ring->adev;
int r;
- mutex_lock(&adev->vm_manager.lock);
- r = amdgpu_vm_grab_id(vm, ring, sync);
- if (r) {
+ r = amdgpu_vm_grab_id(vm, ring, sync,
+ &job->base.s_fence->base);
+ if (r)
DRM_ERROR("Error getting VM ID (%d)\n", r);
- } else {
- fence = &job->base.s_fence->base;
- amdgpu_vm_fence(ring->adev, vm, fence);
+ else
job->ibs->grabbed_vmid = true;
- }
- mutex_unlock(&adev->vm_manager.lock);
fence = amdgpu_sync_get_fence(sync);
}