mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-16 04:37:07 +07:00
drm/amdgpu: remove fence parameter from amd_sched_job_init
We return the fence as part of the job structur anyway, no need to do this twice. Signed-off-by: Christian König <christian.koenig@amd.com> Reviewed-by: Chunming Zhou <david1.zhou@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
parent
a5fb4ec29c
commit
595a9cd68c
drivers/gpu/drm/amd
@ -836,15 +836,13 @@ static int amdgpu_cs_submit(struct amdgpu_cs_parser *p,
|
||||
{
|
||||
struct amdgpu_ring *ring = p->job->ring;
|
||||
struct amd_sched_entity *entity = &p->ctx->rings[ring->idx].entity;
|
||||
struct fence *fence;
|
||||
struct amdgpu_job *job;
|
||||
int r;
|
||||
|
||||
job = p->job;
|
||||
p->job = NULL;
|
||||
|
||||
r = amd_sched_job_init(&job->base, &ring->sched,
|
||||
entity, p->filp, &fence);
|
||||
r = amd_sched_job_init(&job->base, &ring->sched, entity, p->filp);
|
||||
if (r) {
|
||||
amdgpu_job_free(job);
|
||||
return r;
|
||||
@ -852,8 +850,8 @@ static int amdgpu_cs_submit(struct amdgpu_cs_parser *p,
|
||||
|
||||
job->owner = p->filp;
|
||||
job->ctx = entity->fence_context;
|
||||
p->fence = fence_get(fence);
|
||||
cs->out.handle = amdgpu_ctx_add_fence(p->ctx, ring, fence);
|
||||
p->fence = fence_get(&job->base.s_fence->finished);
|
||||
cs->out.handle = amdgpu_ctx_add_fence(p->ctx, ring, p->fence);
|
||||
job->uf_sequence = cs->out.handle;
|
||||
amdgpu_job_free_resources(job);
|
||||
|
||||
|
@ -113,20 +113,19 @@ int amdgpu_job_submit(struct amdgpu_job *job, struct amdgpu_ring *ring,
|
||||
struct amd_sched_entity *entity, void *owner,
|
||||
struct fence **f)
|
||||
{
|
||||
struct fence *fence;
|
||||
int r;
|
||||
job->ring = ring;
|
||||
|
||||
if (!f)
|
||||
return -EINVAL;
|
||||
|
||||
r = amd_sched_job_init(&job->base, &ring->sched, entity, owner, &fence);
|
||||
r = amd_sched_job_init(&job->base, &ring->sched, entity, owner);
|
||||
if (r)
|
||||
return r;
|
||||
|
||||
job->owner = owner;
|
||||
job->ctx = entity->fence_context;
|
||||
*f = fence_get(fence);
|
||||
*f = fence_get(&job->base.s_fence->finished);
|
||||
amdgpu_job_free_resources(job);
|
||||
amd_sched_entity_push_job(&job->base);
|
||||
|
||||
|
@ -403,7 +403,7 @@ void amd_sched_entity_push_job(struct amd_sched_job *sched_job)
|
||||
int amd_sched_job_init(struct amd_sched_job *job,
|
||||
struct amd_gpu_scheduler *sched,
|
||||
struct amd_sched_entity *entity,
|
||||
void *owner, struct fence **fence)
|
||||
void *owner)
|
||||
{
|
||||
job->sched = sched;
|
||||
job->s_entity = entity;
|
||||
@ -415,8 +415,6 @@ int amd_sched_job_init(struct amd_sched_job *job,
|
||||
INIT_LIST_HEAD(&job->node);
|
||||
INIT_DELAYED_WORK(&job->work_tdr, amd_sched_job_timedout);
|
||||
|
||||
if (fence)
|
||||
*fence = &job->s_fence->finished;
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -151,5 +151,5 @@ void amd_sched_fence_finished(struct amd_sched_fence *fence);
|
||||
int amd_sched_job_init(struct amd_sched_job *job,
|
||||
struct amd_gpu_scheduler *sched,
|
||||
struct amd_sched_entity *entity,
|
||||
void *owner, struct fence **fence);
|
||||
void *owner);
|
||||
#endif
|
||||
|
Loading…
Reference in New Issue
Block a user