[PATCH] drm/amdgpu: always initialize job->base.sched
Christian König
ckoenig.leichtzumerken at gmail.com
Tue Jul 17 07:26:46 UTC 2018
Am 17.07.2018 um 09:16 schrieb Zhou, David(ChunMing):
> Acked-by: Chunming Zhou <david1.zhou at amd.com>, but I think it isn't a nice evaluation although there is comment in code.
Yeah, I didn't thought about the possibility that we need to free the
job before it is submitted (in other words before the scheduler is
determined).
Alternatively we could provide the adev manually to amdgpu_job_free()
and amdgpu_job_free_resources().
Regards,
Christian.
>
>
> -----Original Message-----
> From: amd-gfx [mailto:amd-gfx-bounces at lists.freedesktop.org] On Behalf Of Christian K?nig
> Sent: Tuesday, July 17, 2018 3:05 PM
> To: amd-gfx at lists.freedesktop.org
> Subject: [PATCH] drm/amdgpu: always initialize job->base.sched
>
> Otherwise we can't clean up the job if we run into an error before it is pushed to the scheduler.
>
> Signed-off-by: Christian König <christian.koenig at amd.com>
> ---
> drivers/gpu/drm/amd/amdgpu/amdgpu_job.c | 5 +++++
> 1 file changed, 5 insertions(+)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_job.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_job.c
> index 024efb7ea6d6..42a4764d728e 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_job.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_job.c
> @@ -54,6 +54,11 @@ int amdgpu_job_alloc(struct amdgpu_device *adev, unsigned num_ibs,
> if (!*job)
> return -ENOMEM;
>
> + /*
> + * Initialize the scheduler to at least some ring so that we always
> + * have a pointer to adev.
> + */
> + (*job)->base.sched = &adev->rings[0]->sched;
> (*job)->vm = vm;
> (*job)->ibs = (void *)&(*job)[1];
> (*job)->num_ibs = num_ibs;
> --
> 2.14.1
>
> _______________________________________________
> amd-gfx mailing list
> amd-gfx at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/amd-gfx
More information about the amd-gfx
mailing list