diff options
author | Christian König <christian.koenig@amd.com> | 2016-05-20 06:53:52 -0400 |
---|---|---|
committer | Alex Deucher <alexander.deucher@amd.com> | 2016-07-07 14:51:20 -0400 |
commit | 6fc1367582534a54476c701326f00e7d2ec81f22 (patch) | |
tree | 35864ccc25c7ea237aa8ff7a16afad55e4f6a59b /drivers/gpu/drm/amd/amdgpu/amdgpu_job.c | |
parent | 0e9d239b8d704e7878a173784a6c128e64e25fe5 (diff) |
drm/amdgpu: generalize the scheduler fence
Make it two events, one for the job being scheduled and one when it is finished.
Acked-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Christian König <christian.koenig@amd.com>
Acked-by: Chunming Zhou <david1.zhou@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_job.c')
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_job.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_job.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_job.c index d4791a7f8075..ddfed939c893 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_job.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_job.c | |||
@@ -85,7 +85,7 @@ static void amdgpu_job_free_resources(struct amdgpu_job *job) | |||
85 | unsigned i; | 85 | unsigned i; |
86 | 86 | ||
87 | /* use sched fence if available */ | 87 | /* use sched fence if available */ |
88 | f = job->base.s_fence ? &job->base.s_fence->base : job->fence; | 88 | f = job->base.s_fence ? &job->base.s_fence->finished : job->fence; |
89 | 89 | ||
90 | for (i = 0; i < job->num_ibs; ++i) | 90 | for (i = 0; i < job->num_ibs; ++i) |
91 | amdgpu_ib_free(job->adev, &job->ibs[i], f); | 91 | amdgpu_ib_free(job->adev, &job->ibs[i], f); |
@@ -143,7 +143,7 @@ static struct fence *amdgpu_job_dependency(struct amd_sched_job *sched_job) | |||
143 | int r; | 143 | int r; |
144 | 144 | ||
145 | r = amdgpu_vm_grab_id(vm, ring, &job->sync, | 145 | r = amdgpu_vm_grab_id(vm, ring, &job->sync, |
146 | &job->base.s_fence->base, | 146 | &job->base.s_fence->finished, |
147 | &job->vm_id, &job->vm_pd_addr); | 147 | &job->vm_id, &job->vm_pd_addr); |
148 | if (r) | 148 | if (r) |
149 | DRM_ERROR("Error getting VM ID (%d)\n", r); | 149 | DRM_ERROR("Error getting VM ID (%d)\n", r); |